Update YOLO11 Actions and Docs (#16596)
Signed-off-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
parent
51e93d6111
commit
97f38409fb
124 changed files with 1948 additions and 1948 deletions
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn to create line graphs, bar plots, and pie charts using Python with guided instructions and code snippets. Maximize your data visualization skills!.
|
||||
keywords: Ultralytics, YOLOv8, data visualization, line graphs, bar plots, pie charts, Python, analytics, tutorial, guide
|
||||
keywords: Ultralytics, YOLO11, data visualization, line graphs, bar plots, pie charts, Python, analytics, tutorial, guide
|
||||
---
|
||||
|
||||
# Analytics using Ultralytics YOLOv8
|
||||
# Analytics using Ultralytics YOLO11
|
||||
|
||||
## Introduction
|
||||
|
||||
|
|
@ -42,7 +42,7 @@ This guide provides a comprehensive overview of three fundamental types of [data
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -91,7 +91,7 @@ This guide provides a comprehensive overview of three fundamental types of [data
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -152,7 +152,7 @@ This guide provides a comprehensive overview of three fundamental types of [data
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -202,7 +202,7 @@ This guide provides a comprehensive overview of three fundamental types of [data
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -252,7 +252,7 @@ This guide provides a comprehensive overview of three fundamental types of [data
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -330,11 +330,11 @@ Understanding when and how to use different types of visualizations is crucial f
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I create a line graph using Ultralytics YOLOv8 Analytics?
|
||||
### How do I create a line graph using Ultralytics YOLO11 Analytics?
|
||||
|
||||
To create a line graph using Ultralytics YOLOv8 Analytics, follow these steps:
|
||||
To create a line graph using Ultralytics YOLO11 Analytics, follow these steps:
|
||||
|
||||
1. Load a YOLOv8 model and open your video file.
|
||||
1. Load a YOLO11 model and open your video file.
|
||||
2. Initialize the `Analytics` class with the type set to "line."
|
||||
3. Iterate through video frames, updating the line graph with relevant data, such as object counts per frame.
|
||||
4. Save the output video displaying the line graph.
|
||||
|
|
@ -346,7 +346,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
out = cv2.VideoWriter("line_plot.avi", cv2.VideoWriter_fourcc(*"MJPG"), fps, (w, h))
|
||||
|
||||
|
|
@ -366,11 +366,11 @@ out.release()
|
|||
cv2.destroyAllWindows()
|
||||
```
|
||||
|
||||
For further details on configuring the `Analytics` class, visit the [Analytics using Ultralytics YOLOv8 📊](#analytics-using-ultralytics-yolov8) section.
|
||||
For further details on configuring the `Analytics` class, visit the [Analytics using Ultralytics YOLO11 📊](#analytics-using-ultralytics-yolo11) section.
|
||||
|
||||
### What are the benefits of using Ultralytics YOLOv8 for creating bar plots?
|
||||
### What are the benefits of using Ultralytics YOLO11 for creating bar plots?
|
||||
|
||||
Using Ultralytics YOLOv8 for creating bar plots offers several benefits:
|
||||
Using Ultralytics YOLO11 for creating bar plots offers several benefits:
|
||||
|
||||
1. **Real-time Data Visualization**: Seamlessly integrate [object detection](https://www.ultralytics.com/glossary/object-detection) results into bar plots for dynamic updates.
|
||||
2. **Ease of Use**: Simple API and functions make it straightforward to implement and visualize data.
|
||||
|
|
@ -384,7 +384,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
out = cv2.VideoWriter("bar_plot.avi", cv2.VideoWriter_fourcc(*"MJPG"), fps, (w, h))
|
||||
|
||||
|
|
@ -409,9 +409,9 @@ cv2.destroyAllWindows()
|
|||
|
||||
To learn more, visit the [Bar Plot](#visual-samples) section in the guide.
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for creating pie charts in my data visualization projects?
|
||||
### Why should I use Ultralytics YOLO11 for creating pie charts in my data visualization projects?
|
||||
|
||||
Ultralytics YOLOv8 is an excellent choice for creating pie charts because:
|
||||
Ultralytics YOLO11 is an excellent choice for creating pie charts because:
|
||||
|
||||
1. **Integration with Object Detection**: Directly integrate object detection results into pie charts for immediate insights.
|
||||
2. **User-Friendly API**: Simple to set up and use with minimal code.
|
||||
|
|
@ -425,7 +425,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
out = cv2.VideoWriter("pie_chart.avi", cv2.VideoWriter_fourcc(*"MJPG"), fps, (w, h))
|
||||
|
||||
|
|
@ -450,9 +450,9 @@ cv2.destroyAllWindows()
|
|||
|
||||
For more information, refer to the [Pie Chart](#visual-samples) section in the guide.
|
||||
|
||||
### Can Ultralytics YOLOv8 be used to track objects and dynamically update visualizations?
|
||||
### Can Ultralytics YOLO11 be used to track objects and dynamically update visualizations?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can be used to track objects and dynamically update visualizations. It supports tracking multiple objects in real-time and can update various visualizations like line graphs, bar plots, and pie charts based on the tracked objects' data.
|
||||
Yes, Ultralytics YOLO11 can be used to track objects and dynamically update visualizations. It supports tracking multiple objects in real-time and can update various visualizations like line graphs, bar plots, and pie charts based on the tracked objects' data.
|
||||
|
||||
Example for tracking and updating a line graph:
|
||||
|
||||
|
|
@ -461,7 +461,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
out = cv2.VideoWriter("line_plot.avi", cv2.VideoWriter_fourcc(*"MJPG"), fps, (w, h))
|
||||
|
||||
|
|
@ -483,11 +483,11 @@ cv2.destroyAllWindows()
|
|||
|
||||
To learn about the complete functionality, see the [Tracking](../modes/track.md) section.
|
||||
|
||||
### What makes Ultralytics YOLOv8 different from other object detection solutions like [OpenCV](https://www.ultralytics.com/glossary/opencv) and [TensorFlow](https://www.ultralytics.com/glossary/tensorflow)?
|
||||
### What makes Ultralytics YOLO11 different from other object detection solutions like [OpenCV](https://www.ultralytics.com/glossary/opencv) and [TensorFlow](https://www.ultralytics.com/glossary/tensorflow)?
|
||||
|
||||
Ultralytics YOLOv8 stands out from other object detection solutions like OpenCV and TensorFlow for multiple reasons:
|
||||
Ultralytics YOLO11 stands out from other object detection solutions like OpenCV and TensorFlow for multiple reasons:
|
||||
|
||||
1. **State-of-the-art [Accuracy](https://www.ultralytics.com/glossary/accuracy)**: YOLOv8 provides superior accuracy in object detection, segmentation, and classification tasks.
|
||||
1. **State-of-the-art [Accuracy](https://www.ultralytics.com/glossary/accuracy)**: YOLO11 provides superior accuracy in object detection, segmentation, and classification tasks.
|
||||
2. **Ease of Use**: User-friendly API allows for quick implementation and integration without extensive coding.
|
||||
3. **Real-time Performance**: Optimized for high-speed inference, suitable for real-time applications.
|
||||
4. **Diverse Applications**: Supports various tasks including multi-object tracking, custom model training, and exporting to different formats like ONNX, TensorRT, and CoreML.
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to run YOLOv8 on AzureML. Quickstart instructions for terminal and notebooks to harness Azure's cloud computing for efficient model training.
|
||||
keywords: YOLOv8, AzureML, machine learning, cloud computing, quickstart, terminal, notebooks, model training, Python SDK, AI, Ultralytics
|
||||
description: Learn how to run YOLO11 on AzureML. Quickstart instructions for terminal and notebooks to harness Azure's cloud computing for efficient model training.
|
||||
keywords: YOLO11, AzureML, machine learning, cloud computing, quickstart, terminal, notebooks, model training, Python SDK, AI, Ultralytics
|
||||
---
|
||||
|
||||
# YOLOv8 🚀 on AzureML
|
||||
# YOLO11 🚀 on AzureML
|
||||
|
||||
## What is Azure?
|
||||
|
||||
|
|
@ -22,7 +22,7 @@ For users of YOLO (You Only Look Once), AzureML provides a robust, scalable, and
|
|||
- Utilize built-in tools for data preprocessing, feature selection, and model training.
|
||||
- Collaborate more efficiently with capabilities for MLOps (Machine Learning Operations), including but not limited to monitoring, auditing, and versioning of models and data.
|
||||
|
||||
In the subsequent sections, you will find a quickstart guide detailing how to run YOLOv8 object detection models using AzureML, either from a compute terminal or a notebook.
|
||||
In the subsequent sections, you will find a quickstart guide detailing how to run YOLO11 object detection models using AzureML, either from a compute terminal or a notebook.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
|
@ -49,8 +49,8 @@ Start your compute and open a Terminal:
|
|||
Create your conda virtualenv and install pip in it:
|
||||
|
||||
```bash
|
||||
conda create --name yolov8env -y
|
||||
conda activate yolov8env
|
||||
conda create --name yolo11env -y
|
||||
conda activate yolo11env
|
||||
conda install pip -y
|
||||
```
|
||||
|
||||
|
|
@ -63,18 +63,18 @@ pip install ultralytics
|
|||
pip install onnx>=1.12.0
|
||||
```
|
||||
|
||||
### Perform YOLOv8 tasks
|
||||
### Perform YOLO11 tasks
|
||||
|
||||
Predict:
|
||||
|
||||
```bash
|
||||
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
```
|
||||
|
||||
Train a detection model for 10 [epochs](https://www.ultralytics.com/glossary/epoch) with an initial learning_rate of 0.01:
|
||||
|
||||
```bash
|
||||
yolo train data=coco8.yaml model=yolov8n.pt epochs=10 lr0=0.01
|
||||
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
|
||||
```
|
||||
|
||||
You can find more [instructions to use the Ultralytics CLI here](../quickstart.md#use-ultralytics-with-cli).
|
||||
|
|
@ -92,11 +92,11 @@ Open the compute Terminal.
|
|||
From your compute terminal, you need to create a new ipykernel that will be used by your notebook to manage your dependencies:
|
||||
|
||||
```bash
|
||||
conda create --name yolov8env -y
|
||||
conda activate yolov8env
|
||||
conda create --name yolo11env -y
|
||||
conda activate yolo11env
|
||||
conda install pip -y
|
||||
conda install ipykernel -y
|
||||
python -m ipykernel install --user --name yolov8env --display-name "yolov8env"
|
||||
python -m ipykernel install --user --name yolo11env --display-name "yolo11env"
|
||||
```
|
||||
|
||||
Close your terminal and create a new notebook. From your Notebook, you can select the new kernel.
|
||||
|
|
@ -105,21 +105,21 @@ Then you can open a Notebook cell and install the required dependencies:
|
|||
|
||||
```bash
|
||||
%%bash
|
||||
source activate yolov8env
|
||||
source activate yolo11env
|
||||
cd ultralytics
|
||||
pip install -r requirements.txt
|
||||
pip install ultralytics
|
||||
pip install onnx>=1.12.0
|
||||
```
|
||||
|
||||
Note that we need to use the `source activate yolov8env` for all the %%bash cells, to make sure that the %%bash cell uses environment we want.
|
||||
Note that we need to use the `source activate yolo11env` for all the %%bash cells, to make sure that the %%bash cell uses environment we want.
|
||||
|
||||
Run some predictions using the [Ultralytics CLI](../quickstart.md#use-ultralytics-with-cli):
|
||||
|
||||
```bash
|
||||
%%bash
|
||||
source activate yolov8env
|
||||
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
source activate yolo11env
|
||||
yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
```
|
||||
|
||||
Or with the [Ultralytics Python interface](../quickstart.md#use-ultralytics-with-python), for example to train the model:
|
||||
|
|
@ -128,7 +128,7 @@ Or with the [Ultralytics Python interface](../quickstart.md#use-ultralytics-with
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n.pt") # load an official YOLOv8n model
|
||||
model = YOLO("yolo11n.pt") # load an official YOLO11n model
|
||||
|
||||
# Use the model
|
||||
model.train(data="coco8.yaml", epochs=3) # train the model
|
||||
|
|
@ -137,47 +137,47 @@ results = model("https://ultralytics.com/images/bus.jpg") # predict on an image
|
|||
path = model.export(format="onnx") # export the model to ONNX format
|
||||
```
|
||||
|
||||
You can use either the Ultralytics CLI or Python interface for running YOLOv8 tasks, as described in the terminal section above.
|
||||
You can use either the Ultralytics CLI or Python interface for running YOLO11 tasks, as described in the terminal section above.
|
||||
|
||||
By following these steps, you should be able to get YOLOv8 running quickly on AzureML for quick trials. For more advanced uses, you may refer to the full AzureML documentation linked at the beginning of this guide.
|
||||
By following these steps, you should be able to get YOLO11 running quickly on AzureML for quick trials. For more advanced uses, you may refer to the full AzureML documentation linked at the beginning of this guide.
|
||||
|
||||
## Explore More with AzureML
|
||||
|
||||
This guide serves as an introduction to get you up and running with YOLOv8 on AzureML. However, it only scratches the surface of what AzureML can offer. To delve deeper and unlock the full potential of AzureML for your machine learning projects, consider exploring the following resources:
|
||||
This guide serves as an introduction to get you up and running with YOLO11 on AzureML. However, it only scratches the surface of what AzureML can offer. To delve deeper and unlock the full potential of AzureML for your machine learning projects, consider exploring the following resources:
|
||||
|
||||
- [Create a Data Asset](https://learn.microsoft.com/azure/machine-learning/how-to-create-data-assets): Learn how to set up and manage your data assets effectively within the AzureML environment.
|
||||
- [Initiate an AzureML Job](https://learn.microsoft.com/azure/machine-learning/how-to-train-model): Get a comprehensive understanding of how to kickstart your machine learning training jobs on AzureML.
|
||||
- [Register a Model](https://learn.microsoft.com/azure/machine-learning/how-to-manage-models): Familiarize yourself with model management practices including registration, versioning, and deployment.
|
||||
- [Train YOLOv8 with AzureML Python SDK](https://medium.com/@ouphi/how-to-train-the-yolov8-model-with-azure-machine-learning-python-sdk-8268696be8ba): Explore a step-by-step guide on using the AzureML Python SDK to train your YOLOv8 models.
|
||||
- [Train YOLOv8 with AzureML CLI](https://medium.com/@ouphi/how-to-train-the-yolov8-model-with-azureml-and-the-az-cli-73d3c870ba8e): Discover how to utilize the command-line interface for streamlined training and management of YOLOv8 models on AzureML.
|
||||
- [Train YOLO11 with AzureML Python SDK](https://medium.com/@ouphi/how-to-train-the-yolov8-model-with-azure-machine-learning-python-sdk-8268696be8ba): Explore a step-by-step guide on using the AzureML Python SDK to train your YOLO11 models.
|
||||
- [Train YOLO11 with AzureML CLI](https://medium.com/@ouphi/how-to-train-the-yolov8-model-with-azureml-and-the-az-cli-73d3c870ba8e): Discover how to utilize the command-line interface for streamlined training and management of YOLO11 models on AzureML.
|
||||
|
||||
## FAQ
|
||||
|
||||
### How do I run YOLOv8 on AzureML for model training?
|
||||
### How do I run YOLO11 on AzureML for model training?
|
||||
|
||||
Running YOLOv8 on AzureML for model training involves several steps:
|
||||
Running YOLO11 on AzureML for model training involves several steps:
|
||||
|
||||
1. **Create a Compute Instance**: From your AzureML workspace, navigate to Compute > Compute instances > New, and select the required instance.
|
||||
|
||||
2. **Setup Environment**: Start your compute instance, open a terminal, and create a conda environment:
|
||||
|
||||
```bash
|
||||
conda create --name yolov8env -y
|
||||
conda activate yolov8env
|
||||
conda create --name yolo11env -y
|
||||
conda activate yolo11env
|
||||
conda install pip -y
|
||||
pip install ultralytics onnx>=1.12.0
|
||||
```
|
||||
|
||||
3. **Run YOLOv8 Tasks**: Use the Ultralytics CLI to train your model:
|
||||
3. **Run YOLO11 Tasks**: Use the Ultralytics CLI to train your model:
|
||||
```bash
|
||||
yolo train data=coco8.yaml model=yolov8n.pt epochs=10 lr0=0.01
|
||||
yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01
|
||||
```
|
||||
|
||||
For more details, you can refer to the [instructions to use the Ultralytics CLI](../quickstart.md#use-ultralytics-with-cli).
|
||||
|
||||
### What are the benefits of using AzureML for YOLOv8 training?
|
||||
### What are the benefits of using AzureML for YOLO11 training?
|
||||
|
||||
AzureML provides a robust and efficient ecosystem for training YOLOv8 models:
|
||||
AzureML provides a robust and efficient ecosystem for training YOLO11 models:
|
||||
|
||||
- **Scalability**: Easily scale your compute resources as your data and model complexity grows.
|
||||
- **MLOps Integration**: Utilize features like versioning, monitoring, and auditing to streamline ML operations.
|
||||
|
|
@ -185,9 +185,9 @@ AzureML provides a robust and efficient ecosystem for training YOLOv8 models:
|
|||
|
||||
These advantages make AzureML an ideal platform for projects ranging from quick prototypes to large-scale deployments. For more tips, check out [AzureML Jobs](https://learn.microsoft.com/azure/machine-learning/how-to-train-model).
|
||||
|
||||
### How do I troubleshoot common issues when running YOLOv8 on AzureML?
|
||||
### How do I troubleshoot common issues when running YOLO11 on AzureML?
|
||||
|
||||
Troubleshooting common issues with YOLOv8 on AzureML can involve the following steps:
|
||||
Troubleshooting common issues with YOLO11 on AzureML can involve the following steps:
|
||||
|
||||
- **Dependency Issues**: Ensure all required packages are installed. Refer to the `requirements.txt` file for dependencies.
|
||||
- **Environment Setup**: Verify that your conda environment is correctly activated before running commands.
|
||||
|
|
@ -202,7 +202,7 @@ Yes, AzureML allows you to use both the Ultralytics CLI and the Python interface
|
|||
- **CLI**: Ideal for quick tasks and running standard scripts directly from the terminal.
|
||||
|
||||
```bash
|
||||
yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
|
||||
```
|
||||
|
||||
- **Python Interface**: Useful for more complex tasks requiring custom coding and integration within notebooks.
|
||||
|
|
@ -210,18 +210,18 @@ Yes, AzureML allows you to use both the Ultralytics CLI and the Python interface
|
|||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
model.train(data="coco8.yaml", epochs=3)
|
||||
```
|
||||
|
||||
Refer to the quickstart guides for more detailed instructions [here](../quickstart.md#use-ultralytics-with-cli) and [here](../quickstart.md#use-ultralytics-with-python).
|
||||
|
||||
### What is the advantage of using Ultralytics YOLOv8 over other [object detection](https://www.ultralytics.com/glossary/object-detection) models?
|
||||
### What is the advantage of using Ultralytics YOLO11 over other [object detection](https://www.ultralytics.com/glossary/object-detection) models?
|
||||
|
||||
Ultralytics YOLOv8 offers several unique advantages over competing object detection models:
|
||||
Ultralytics YOLO11 offers several unique advantages over competing object detection models:
|
||||
|
||||
- **Speed**: Faster inference and training times compared to models like Faster R-CNN and SSD.
|
||||
- **[Accuracy](https://www.ultralytics.com/glossary/accuracy)**: High accuracy in detection tasks with features like anchor-free design and enhanced augmentation strategies.
|
||||
- **Ease of Use**: Intuitive API and CLI for quick setup, making it accessible both to beginners and experts.
|
||||
|
||||
To explore more about YOLOv8's features, visit the [Ultralytics YOLO](https://www.ultralytics.com/yolo) page for detailed insights.
|
||||
To explore more about YOLO11's features, visit the [Ultralytics YOLO](https://www.ultralytics.com/yolo) page for detailed insights.
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ With Ultralytics installed, you can now start using its robust features for [obj
|
|||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt") # initialize model
|
||||
model = YOLO("yolo11n.pt") # initialize model
|
||||
results = model("path/to/image.jpg") # perform inference
|
||||
results[0].show() # display results for the first image
|
||||
```
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to boost your Raspberry Pi's ML performance using Coral Edge TPU with Ultralytics YOLOv8. Follow our detailed setup and installation guide.
|
||||
keywords: Coral Edge TPU, Raspberry Pi, YOLOv8, Ultralytics, TensorFlow Lite, ML inference, machine learning, AI, installation guide, setup tutorial
|
||||
description: Learn how to boost your Raspberry Pi's ML performance using Coral Edge TPU with Ultralytics YOLO11. Follow our detailed setup and installation guide.
|
||||
keywords: Coral Edge TPU, Raspberry Pi, YOLO11, Ultralytics, TensorFlow Lite, ML inference, machine learning, AI, installation guide, setup tutorial
|
||||
---
|
||||
|
||||
# Coral Edge TPU on a Raspberry Pi with Ultralytics YOLOv8 🚀
|
||||
# Coral Edge TPU on a Raspberry Pi with Ultralytics YOLO11 🚀
|
||||
|
||||
<p align="center">
|
||||
<img width="800" src="https://github.com/ultralytics/docs/releases/download/0/edge-tpu-usb-accelerator-and-pi.avif" alt="Raspberry Pi single board computer with USB Edge TPU accelerator">
|
||||
|
|
@ -152,9 +152,9 @@ Find comprehensive information on the [Predict](../modes/predict.md) page for fu
|
|||
|
||||
## FAQ
|
||||
|
||||
### What is a Coral Edge TPU and how does it enhance Raspberry Pi's performance with Ultralytics YOLOv8?
|
||||
### What is a Coral Edge TPU and how does it enhance Raspberry Pi's performance with Ultralytics YOLO11?
|
||||
|
||||
The Coral Edge TPU is a compact device designed to add an Edge TPU coprocessor to your system. This coprocessor enables low-power, high-performance [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) inference, particularly optimized for TensorFlow Lite models. When using a Raspberry Pi, the Edge TPU accelerates ML model inference, significantly boosting performance, especially for Ultralytics YOLOv8 models. You can read more about the Coral Edge TPU on their [home page](https://coral.ai/products/accelerator).
|
||||
The Coral Edge TPU is a compact device designed to add an Edge TPU coprocessor to your system. This coprocessor enables low-power, high-performance [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) inference, particularly optimized for TensorFlow Lite models. When using a Raspberry Pi, the Edge TPU accelerates ML model inference, significantly boosting performance, especially for Ultralytics YOLO11 models. You can read more about the Coral Edge TPU on their [home page](https://coral.ai/products/accelerator).
|
||||
|
||||
### How do I install the Coral Edge TPU runtime on a Raspberry Pi?
|
||||
|
||||
|
|
@ -166,9 +166,9 @@ sudo dpkg -i path/to/package.deb
|
|||
|
||||
Make sure to uninstall any previous Coral Edge TPU runtime versions by following the steps outlined in the [Installation Walkthrough](#installation-walkthrough) section.
|
||||
|
||||
### Can I export my Ultralytics YOLOv8 model to be compatible with Coral Edge TPU?
|
||||
### Can I export my Ultralytics YOLO11 model to be compatible with Coral Edge TPU?
|
||||
|
||||
Yes, you can export your Ultralytics YOLOv8 model to be compatible with the Coral Edge TPU. It is recommended to perform the export on Google Colab, an x86_64 Linux machine, or using the [Ultralytics Docker container](docker-quickstart.md). You can also use Ultralytics HUB for exporting. Here is how you can export your model using Python and CLI:
|
||||
Yes, you can export your Ultralytics YOLO11 model to be compatible with the Coral Edge TPU. It is recommended to perform the export on Google Colab, an x86_64 Linux machine, or using the [Ultralytics Docker container](docker-quickstart.md). You can also use Ultralytics HUB for exporting. Here is how you can export your model using Python and CLI:
|
||||
|
||||
!!! note "Exporting the model"
|
||||
|
||||
|
|
@ -208,9 +208,9 @@ pip install -U tflite-runtime
|
|||
|
||||
For a specific wheel, such as TensorFlow 2.15.0 `tflite-runtime`, you can download it from [this link](https://github.com/feranick/TFlite-builds/releases) and install it using `pip`. Detailed instructions are available in the section on running the model [Running the Model](#running-the-model).
|
||||
|
||||
### How do I run inference with an exported YOLOv8 model on a Raspberry Pi using the Coral Edge TPU?
|
||||
### How do I run inference with an exported YOLO11 model on a Raspberry Pi using the Coral Edge TPU?
|
||||
|
||||
After exporting your YOLOv8 model to an Edge TPU-compatible format, you can run inference using the following code snippets:
|
||||
After exporting your YOLO11 model to an Edge TPU-compatible format, you can run inference using the following code snippets:
|
||||
|
||||
!!! note "Running the model"
|
||||
|
||||
|
|
|
|||
|
|
@ -136,12 +136,12 @@ Bouncing your ideas and queries off other [computer vision](https://www.ultralyt
|
|||
|
||||
### Where to Find Help and Support
|
||||
|
||||
- **GitHub Issues:** Visit the YOLOv8 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers are there to help with any issues you face.
|
||||
- **GitHub Issues:** Visit the YOLO11 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers are there to help with any issues you face.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to connect with other users and developers, get support, share knowledge, and brainstorm ideas.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Refer to the [official YOLOv8 documentation](./index.md) for thorough guides and valuable insights on numerous computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Refer to the [official YOLO11 documentation](./index.md) for thorough guides and valuable insights on numerous computer vision tasks and projects.
|
||||
|
||||
## Conclusion
|
||||
|
||||
|
|
@ -159,7 +159,7 @@ Ensuring high consistency and accuracy in data annotation involves establishing
|
|||
|
||||
### How many images do I need for training Ultralytics YOLO models?
|
||||
|
||||
For effective [transfer learning](https://www.ultralytics.com/glossary/transfer-learning) and object detection with Ultralytics YOLO models, start with a minimum of a few hundred annotated objects per class. If training for just one class, begin with at least 100 annotated images and train for approximately 100 [epochs](https://www.ultralytics.com/glossary/epoch). More complex tasks might require thousands of images per class to achieve high reliability and performance. Quality annotations are crucial, so ensure your data collection and annotation processes are rigorous and aligned with your project's specific goals. Explore detailed training strategies in the [YOLOv8 training guide](../modes/train.md).
|
||||
For effective [transfer learning](https://www.ultralytics.com/glossary/transfer-learning) and object detection with Ultralytics YOLO models, start with a minimum of a few hundred annotated objects per class. If training for just one class, begin with at least 100 annotated images and train for approximately 100 [epochs](https://www.ultralytics.com/glossary/epoch). More complex tasks might require thousands of images per class to achieve high reliability and performance. Quality annotations are crucial, so ensure your data collection and annotation processes are rigorous and aligned with your project's specific goals. Explore detailed training strategies in the [YOLO11 training guide](../modes/train.md).
|
||||
|
||||
### What are some popular tools for data annotation?
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to deploy Ultralytics YOLOv8 on NVIDIA Jetson devices using TensorRT and DeepStream SDK. Explore performance benchmarks and maximize AI capabilities.
|
||||
keywords: Ultralytics, YOLOv8, NVIDIA Jetson, JetPack, AI deployment, embedded systems, deep learning, TensorRT, DeepStream SDK, computer vision
|
||||
description: Learn how to deploy Ultralytics YOLO11 on NVIDIA Jetson devices using TensorRT and DeepStream SDK. Explore performance benchmarks and maximize AI capabilities.
|
||||
keywords: Ultralytics, YOLO11, NVIDIA Jetson, JetPack, AI deployment, embedded systems, deep learning, TensorRT, DeepStream SDK, computer vision
|
||||
---
|
||||
|
||||
# Ultralytics YOLOv8 on NVIDIA Jetson using DeepStream SDK and TensorRT
|
||||
# Ultralytics YOLO11 on NVIDIA Jetson using DeepStream SDK and TensorRT
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -14,10 +14,10 @@ keywords: Ultralytics, YOLOv8, NVIDIA Jetson, JetPack, AI deployment, embedded s
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> How to Run Multiple Streams with DeepStream SDK on Jetson Nano using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> How to Run Multiple Streams with DeepStream SDK on Jetson Nano using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
This comprehensive guide provides a detailed walkthrough for deploying Ultralytics YOLOv8 on [NVIDIA Jetson](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/) devices using DeepStream SDK and TensorRT. Here we use TensorRT to maximize the inference performance on the Jetson platform.
|
||||
This comprehensive guide provides a detailed walkthrough for deploying Ultralytics YOLO11 on [NVIDIA Jetson](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/) devices using DeepStream SDK and TensorRT. Here we use TensorRT to maximize the inference performance on the Jetson platform.
|
||||
|
||||
<img width="1024" src="https://github.com/ultralytics/docs/releases/download/0/deepstream-nvidia-jetson.avif" alt="DeepStream on NVIDIA Jetson">
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ This comprehensive guide provides a detailed walkthrough for deploying Ultralyti
|
|||
|
||||
Before you start to follow this guide:
|
||||
|
||||
- Visit our documentation, [Quick Start Guide: NVIDIA Jetson with Ultralytics YOLOv8](nvidia-jetson.md) to set up your NVIDIA Jetson device with Ultralytics YOLOv8
|
||||
- Visit our documentation, [Quick Start Guide: NVIDIA Jetson with Ultralytics YOLO11](nvidia-jetson.md) to set up your NVIDIA Jetson device with Ultralytics YOLO11
|
||||
- Install [DeepStream SDK](https://developer.nvidia.com/deepstream-getting-started) according to the JetPack version
|
||||
|
||||
- For JetPack 4.6.4, install [DeepStream 6.0.1](https://docs.nvidia.com/metropolis/deepstream/6.0.1/dev-guide/text/DS_Quickstart.html)
|
||||
|
|
@ -43,7 +43,7 @@ Before you start to follow this guide:
|
|||
|
||||
In this guide we have used the Debian package method of installing DeepStream SDK to the Jetson device. You can also visit the [DeepStream SDK on Jetson (Archived)](https://developer.nvidia.com/embedded/deepstream-on-jetson-downloads-archived) to access legacy versions of DeepStream.
|
||||
|
||||
## DeepStream Configuration for YOLOv8
|
||||
## DeepStream Configuration for YOLO11
|
||||
|
||||
Here we are using [marcoslucianops/DeepStream-Yolo](https://github.com/marcoslucianops/DeepStream-Yolo) GitHub repository which includes NVIDIA DeepStream SDK support for YOLO models. We appreciate the efforts of marcoslucianops for his contributions!
|
||||
|
||||
|
|
@ -61,7 +61,7 @@ Here we are using [marcoslucianops/DeepStream-Yolo](https://github.com/marcosluc
|
|||
cd DeepStream-Yolo
|
||||
```
|
||||
|
||||
3. Download Ultralytics YOLOv8 detection model (.pt) of your choice from [YOLOv8 releases](https://github.com/ultralytics/assets/releases). Here we use [yolov8s.pt](https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s.pt).
|
||||
3. Download Ultralytics YOLO11 detection model (.pt) of your choice from [YOLO11 releases](https://github.com/ultralytics/assets/releases). Here we use [yolov8s.pt](https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s.pt).
|
||||
|
||||
```bash
|
||||
wget https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s.pt
|
||||
|
|
@ -69,7 +69,7 @@ Here we are using [marcoslucianops/DeepStream-Yolo](https://github.com/marcosluc
|
|||
|
||||
!!! note
|
||||
|
||||
You can also use a [custom trained YOLOv8 model](https://docs.ultralytics.com/modes/train/).
|
||||
You can also use a [custom trained YOLO11 model](https://docs.ultralytics.com/modes/train/).
|
||||
|
||||
4. Convert model to ONNX
|
||||
|
||||
|
|
@ -179,7 +179,7 @@ deepstream-app -c deepstream_app_config.txt
|
|||
|
||||
It will take a long time to generate the TensorRT engine file before starting the inference. So please be patient.
|
||||
|
||||
<div align=center><img width=1000 src="https://github.com/ultralytics/docs/releases/download/0/yolov8-with-deepstream.avif" alt="YOLOv8 with deepstream"></div>
|
||||
<div align=center><img width=1000 src="https://github.com/ultralytics/docs/releases/download/0/yolov8-with-deepstream.avif" alt="YOLO11 with deepstream"></div>
|
||||
|
||||
!!! tip
|
||||
|
||||
|
|
@ -317,21 +317,21 @@ This guide was initially created by our friends at Seeed Studio, Lakshantha and
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I set up Ultralytics YOLOv8 on an NVIDIA Jetson device?
|
||||
### How do I set up Ultralytics YOLO11 on an NVIDIA Jetson device?
|
||||
|
||||
To set up Ultralytics YOLOv8 on an [NVIDIA Jetson](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/) device, you first need to install the [DeepStream SDK](https://developer.nvidia.com/deepstream-getting-started) compatible with your JetPack version. Follow the step-by-step guide in our [Quick Start Guide](nvidia-jetson.md) to configure your NVIDIA Jetson for YOLOv8 deployment.
|
||||
To set up Ultralytics YOLO11 on an [NVIDIA Jetson](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/) device, you first need to install the [DeepStream SDK](https://developer.nvidia.com/deepstream-getting-started) compatible with your JetPack version. Follow the step-by-step guide in our [Quick Start Guide](nvidia-jetson.md) to configure your NVIDIA Jetson for YOLO11 deployment.
|
||||
|
||||
### What is the benefit of using TensorRT with YOLOv8 on NVIDIA Jetson?
|
||||
### What is the benefit of using TensorRT with YOLO11 on NVIDIA Jetson?
|
||||
|
||||
Using TensorRT with YOLOv8 optimizes the model for inference, significantly reducing latency and improving throughput on NVIDIA Jetson devices. TensorRT provides high-performance, low-latency [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) inference through layer fusion, precision calibration, and kernel auto-tuning. This leads to faster and more efficient execution, particularly useful for real-time applications like video analytics and autonomous machines.
|
||||
Using TensorRT with YOLO11 optimizes the model for inference, significantly reducing latency and improving throughput on NVIDIA Jetson devices. TensorRT provides high-performance, low-latency [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) inference through layer fusion, precision calibration, and kernel auto-tuning. This leads to faster and more efficient execution, particularly useful for real-time applications like video analytics and autonomous machines.
|
||||
|
||||
### Can I run Ultralytics YOLOv8 with DeepStream SDK across different NVIDIA Jetson hardware?
|
||||
### Can I run Ultralytics YOLO11 with DeepStream SDK across different NVIDIA Jetson hardware?
|
||||
|
||||
Yes, the guide for deploying Ultralytics YOLOv8 with the DeepStream SDK and TensorRT is compatible across the entire NVIDIA Jetson lineup. This includes devices like the Jetson Orin NX 16GB with [JetPack 5.1.3](https://developer.nvidia.com/embedded/jetpack-sdk-513) and the Jetson Nano 4GB with [JetPack 4.6.4](https://developer.nvidia.com/jetpack-sdk-464). Refer to the section [DeepStream Configuration for YOLOv8](#deepstream-configuration-for-yolov8) for detailed steps.
|
||||
Yes, the guide for deploying Ultralytics YOLO11 with the DeepStream SDK and TensorRT is compatible across the entire NVIDIA Jetson lineup. This includes devices like the Jetson Orin NX 16GB with [JetPack 5.1.3](https://developer.nvidia.com/embedded/jetpack-sdk-513) and the Jetson Nano 4GB with [JetPack 4.6.4](https://developer.nvidia.com/jetpack-sdk-464). Refer to the section [DeepStream Configuration for YOLO11](#deepstream-configuration-for-yolo11) for detailed steps.
|
||||
|
||||
### How can I convert a YOLOv8 model to ONNX for DeepStream?
|
||||
### How can I convert a YOLO11 model to ONNX for DeepStream?
|
||||
|
||||
To convert a YOLOv8 model to ONNX format for deployment with DeepStream, use the `utils/export_yoloV8.py` script from the [DeepStream-Yolo](https://github.com/marcoslucianops/DeepStream-Yolo) repository.
|
||||
To convert a YOLO11 model to ONNX format for deployment with DeepStream, use the `utils/export_yoloV8.py` script from the [DeepStream-Yolo](https://github.com/marcoslucianops/DeepStream-Yolo) repository.
|
||||
|
||||
Here's an example command:
|
||||
|
||||
|
|
@ -341,12 +341,12 @@ python3 utils/export_yoloV8.py -w yolov8s.pt --opset 12 --simplify
|
|||
|
||||
For more details on model conversion, check out our [model export section](../modes/export.md).
|
||||
|
||||
### What are the performance benchmarks for YOLOv8 on NVIDIA Jetson Orin NX?
|
||||
### What are the performance benchmarks for YOLO on NVIDIA Jetson Orin NX?
|
||||
|
||||
The performance of YOLOv8 models on NVIDIA Jetson Orin NX 16GB varies based on TensorRT precision levels. For example, YOLOv8s models achieve:
|
||||
The performance of YOLO11 models on NVIDIA Jetson Orin NX 16GB varies based on TensorRT precision levels. For example, YOLOv8s models achieve:
|
||||
|
||||
- **FP32 Precision**: 15.63 ms/im, 64 FPS
|
||||
- **FP16 Precision**: 7.94 ms/im, 126 FPS
|
||||
- **INT8 Precision**: 5.53 ms/im, 181 FPS
|
||||
|
||||
These benchmarks underscore the efficiency and capability of using TensorRT-optimized YOLOv8 models on NVIDIA Jetson hardware. For further details, see our [Benchmark Results](#benchmark-results) section.
|
||||
These benchmarks underscore the efficiency and capability of using TensorRT-optimized YOLO11 models on NVIDIA Jetson hardware. For further details, see our [Benchmark Results](#benchmark-results) section.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to define clear goals and objectives for your computer vision project with our practical guide. Includes tips on problem statements, measurable objectives, and key decisions.
|
||||
keywords: computer vision, project planning, problem statement, measurable objectives, dataset preparation, model selection, YOLOv8, Ultralytics
|
||||
keywords: computer vision, project planning, problem statement, measurable objectives, dataset preparation, model selection, YOLO11, Ultralytics
|
||||
---
|
||||
|
||||
# A Practical Guide for Defining Your [Computer Vision](https://www.ultralytics.com/glossary/computer-vision-cv) Project
|
||||
|
|
@ -30,7 +30,7 @@ Let's walk through an example.
|
|||
Consider a computer vision project where you want to [estimate the speed of vehicles](./speed-estimation.md) on a highway. The core issue is that current speed monitoring methods are inefficient and error-prone due to outdated radar systems and manual processes. The project aims to develop a real-time computer vision system that can replace legacy [speed estimation](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects) systems.
|
||||
|
||||
<p align="center">
|
||||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/speed-estimation-using-yolov8.avif" alt="Speed Estimation Using YOLOv8">
|
||||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/speed-estimation-using-yolov8.avif" alt="Speed Estimation Using YOLO11">
|
||||
</p>
|
||||
|
||||
Primary users include traffic management authorities and law enforcement, while secondary stakeholders are highway planners and the public benefiting from safer roads. Key requirements involve evaluating budget, time, and personnel, as well as addressing technical needs like high-resolution cameras and real-time data processing. Additionally, regulatory constraints on privacy and [data security](https://www.ultralytics.com/glossary/data-security) must be considered.
|
||||
|
|
@ -85,7 +85,7 @@ The most popular computer vision tasks include [image classification](https://ww
|
|||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/image-classification-vs-object-detection-vs-image-segmentation.avif" alt="Overview of Computer Vision Tasks">
|
||||
</p>
|
||||
|
||||
For a detailed explanation of various tasks, please take a look at the Ultralytics Docs page on [YOLOv8 Tasks](../tasks/index.md).
|
||||
For a detailed explanation of various tasks, please take a look at the Ultralytics Docs page on [YOLO11 Tasks](../tasks/index.md).
|
||||
|
||||
### Can a Pre-trained Model Remember Classes It Knew Before Custom Training?
|
||||
|
||||
|
|
@ -114,12 +114,12 @@ Connecting with other computer vision enthusiasts can be incredibly helpful for
|
|||
|
||||
### Community Support Channels
|
||||
|
||||
- **GitHub Issues:** Head over to the YOLOv8 GitHub repository. You can use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers can assist with specific problems you encounter.
|
||||
- **GitHub Issues:** Head over to the YOLO11 GitHub repository. You can use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers can assist with specific problems you encounter.
|
||||
- **Ultralytics Discord Server:** Become part of the [Ultralytics Discord server](https://discord.com/invite/ultralytics). Connect with fellow users and developers, seek support, exchange knowledge, and discuss ideas.
|
||||
|
||||
### Comprehensive Guides and Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Explore the [official YOLOv8 documentation](./index.md) for in-depth guides and valuable tips on various computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Explore the [official YOLO11 documentation](./index.md) for in-depth guides and valuable tips on various computer vision tasks and projects.
|
||||
|
||||
## Conclusion
|
||||
|
||||
|
|
@ -138,11 +138,11 @@ To define a clear problem statement for your Ultralytics computer vision project
|
|||
|
||||
Providing a well-defined problem statement ensures that the project remains focused and aligned with your objectives. For a detailed guide, refer to our [practical guide](#defining-a-clear-problem-statement).
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for speed estimation in my computer vision project?
|
||||
### Why should I use Ultralytics YOLO11 for speed estimation in my computer vision project?
|
||||
|
||||
Ultralytics YOLOv8 is ideal for speed estimation because of its real-time object tracking capabilities, high accuracy, and robust performance in detecting and monitoring vehicle speeds. It overcomes inefficiencies and inaccuracies of traditional radar systems by leveraging cutting-edge computer vision technology. Check out our blog on [speed estimation using YOLOv8](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects) for more insights and practical examples.
|
||||
Ultralytics YOLO11 is ideal for speed estimation because of its real-time object tracking capabilities, high accuracy, and robust performance in detecting and monitoring vehicle speeds. It overcomes inefficiencies and inaccuracies of traditional radar systems by leveraging cutting-edge computer vision technology. Check out our blog on [speed estimation using YOLO11](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects) for more insights and practical examples.
|
||||
|
||||
### How do I set effective measurable objectives for my computer vision project with Ultralytics YOLOv8?
|
||||
### How do I set effective measurable objectives for my computer vision project with Ultralytics YOLO11?
|
||||
|
||||
Set effective and measurable objectives using the SMART criteria:
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to calculate distances between objects using Ultralytics YOLOv8 for accurate spatial positioning and scene understanding.
|
||||
keywords: Ultralytics, YOLOv8, distance calculation, computer vision, object tracking, spatial positioning
|
||||
description: Learn how to calculate distances between objects using Ultralytics YOLO11 for accurate spatial positioning and scene understanding.
|
||||
keywords: Ultralytics, YOLO11, distance calculation, computer vision, object tracking, spatial positioning
|
||||
---
|
||||
|
||||
# Distance Calculation using Ultralytics YOLOv8
|
||||
# Distance Calculation using Ultralytics YOLO11
|
||||
|
||||
## What is Distance Calculation?
|
||||
|
||||
Measuring the gap between two objects is known as distance calculation within a specified space. In the case of [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics), the [bounding box](https://www.ultralytics.com/glossary/bounding-box) centroid is employed to calculate the distance for bounding boxes highlighted by the user.
|
||||
Measuring the gap between two objects is known as distance calculation within a specified space. In the case of [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics), the [bounding box](https://www.ultralytics.com/glossary/bounding-box) centroid is employed to calculate the distance for bounding boxes highlighted by the user.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,14 +18,14 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Distance Calculation using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Distance Calculation using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
## Visuals
|
||||
|
||||
| Distance Calculation using Ultralytics YOLOv8 |
|
||||
| Distance Calculation using Ultralytics YOLO11 |
|
||||
| :---------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |
|
||||
|  |
|
||||
|
||||
## Advantages of Distance Calculation?
|
||||
|
||||
|
|
@ -36,7 +36,7 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
|
||||
- Click on any two bounding boxes with Left Mouse click for distance calculation
|
||||
|
||||
!!! example "Distance Calculation using YOLOv8 Example"
|
||||
!!! example "Distance Calculation using YOLO11 Example"
|
||||
|
||||
=== "Video Stream"
|
||||
|
||||
|
|
@ -45,7 +45,7 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
|
@ -98,29 +98,29 @@ Measuring the gap between two objects is known as distance calculation within a
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I calculate distances between objects using Ultralytics YOLOv8?
|
||||
### How do I calculate distances between objects using Ultralytics YOLO11?
|
||||
|
||||
To calculate distances between objects using [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics), you need to identify the bounding box centroids of the detected objects. This process involves initializing the `DistanceCalculation` class from Ultralytics' `solutions` module and using the model's tracking outputs to calculate the distances. You can refer to the implementation in the [distance calculation example](#distance-calculation-using-ultralytics-yolov8).
|
||||
To calculate distances between objects using [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics), you need to identify the bounding box centroids of the detected objects. This process involves initializing the `DistanceCalculation` class from Ultralytics' `solutions` module and using the model's tracking outputs to calculate the distances. You can refer to the implementation in the [distance calculation example](#distance-calculation-using-ultralytics-yolo11).
|
||||
|
||||
### What are the advantages of using distance calculation with Ultralytics YOLOv8?
|
||||
### What are the advantages of using distance calculation with Ultralytics YOLO11?
|
||||
|
||||
Using distance calculation with Ultralytics YOLOv8 offers several advantages:
|
||||
Using distance calculation with Ultralytics YOLO11 offers several advantages:
|
||||
|
||||
- **Localization Precision:** Provides accurate spatial positioning for objects.
|
||||
- **Size Estimation:** Helps estimate physical sizes, contributing to better contextual understanding.
|
||||
- **Scene Understanding:** Enhances 3D scene comprehension, aiding improved decision-making in applications like autonomous driving and surveillance.
|
||||
|
||||
### Can I perform distance calculation in real-time video streams with Ultralytics YOLOv8?
|
||||
### Can I perform distance calculation in real-time video streams with Ultralytics YOLO11?
|
||||
|
||||
Yes, you can perform distance calculation in real-time video streams with Ultralytics YOLOv8. The process involves capturing video frames using [OpenCV](https://www.ultralytics.com/glossary/opencv), running YOLOv8 [object detection](https://www.ultralytics.com/glossary/object-detection), and using the `DistanceCalculation` class to calculate distances between objects in successive frames. For a detailed implementation, see the [video stream example](#distance-calculation-using-ultralytics-yolov8).
|
||||
Yes, you can perform distance calculation in real-time video streams with Ultralytics YOLO11. The process involves capturing video frames using [OpenCV](https://www.ultralytics.com/glossary/opencv), running YOLO11 [object detection](https://www.ultralytics.com/glossary/object-detection), and using the `DistanceCalculation` class to calculate distances between objects in successive frames. For a detailed implementation, see the [video stream example](#distance-calculation-using-ultralytics-yolo11).
|
||||
|
||||
### How do I delete points drawn during distance calculation using Ultralytics YOLOv8?
|
||||
### How do I delete points drawn during distance calculation using Ultralytics YOLO11?
|
||||
|
||||
To delete points drawn during distance calculation with Ultralytics YOLOv8, you can use a right mouse click. This action will clear all the points you have drawn. For more details, refer to the note section under the [distance calculation example](#distance-calculation-using-ultralytics-yolov8).
|
||||
To delete points drawn during distance calculation with Ultralytics YOLO11, you can use a right mouse click. This action will clear all the points you have drawn. For more details, refer to the note section under the [distance calculation example](#distance-calculation-using-ultralytics-yolo11).
|
||||
|
||||
### What are the key arguments for initializing the DistanceCalculation class in Ultralytics YOLOv8?
|
||||
### What are the key arguments for initializing the DistanceCalculation class in Ultralytics YOLO11?
|
||||
|
||||
The key arguments for initializing the `DistanceCalculation` class in Ultralytics YOLOv8 include:
|
||||
The key arguments for initializing the `DistanceCalculation` class in Ultralytics YOLO11 include:
|
||||
|
||||
- `names`: Dictionary mapping class indices to class names.
|
||||
- `view_img`: Flag to indicate if the video stream should be displayed.
|
||||
|
|
|
|||
|
|
@ -197,10 +197,10 @@ Setup and configuration of an X11 or Wayland display server is outside the scope
|
|||
|
||||
### Using Docker with a GUI
|
||||
|
||||
Now you can display graphical applications inside your Docker container. For example, you can run the following [CLI command](../usage/cli.md) to visualize the [predictions](../modes/predict.md) from a [YOLOv8 model](../models/yolov8.md):
|
||||
Now you can display graphical applications inside your Docker container. For example, you can run the following [CLI command](../usage/cli.md) to visualize the [predictions](../modes/predict.md) from a [YOLO11 model](../models/yolo11.md):
|
||||
|
||||
```bash
|
||||
yolo predict model=yolov8n.pt show=True
|
||||
yolo predict model=yolo11n.pt show=True
|
||||
```
|
||||
|
||||
??? info "Testing"
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Transform complex data into insightful heatmaps using Ultralytics YOLOv8. Discover patterns, trends, and anomalies with vibrant visualizations.
|
||||
keywords: Ultralytics, YOLOv8, heatmaps, data visualization, data analysis, complex data, patterns, trends, anomalies
|
||||
description: Transform complex data into insightful heatmaps using Ultralytics YOLO11. Discover patterns, trends, and anomalies with vibrant visualizations.
|
||||
keywords: Ultralytics, YOLO11, heatmaps, data visualization, data analysis, complex data, patterns, trends, anomalies
|
||||
---
|
||||
|
||||
# Advanced [Data Visualization](https://www.ultralytics.com/glossary/data-visualization): Heatmaps using Ultralytics YOLOv8 🚀
|
||||
# Advanced [Data Visualization](https://www.ultralytics.com/glossary/data-visualization): Heatmaps using Ultralytics YOLO11 🚀
|
||||
|
||||
## Introduction to Heatmaps
|
||||
|
||||
A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) transforms complex data into a vibrant, color-coded matrix. This visual tool employs a spectrum of colors to represent varying data values, where warmer hues indicate higher intensities and cooler tones signify lower values. Heatmaps excel in visualizing intricate data patterns, correlations, and anomalies, offering an accessible and engaging approach to data interpretation across diverse domains.
|
||||
A heatmap generated with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) transforms complex data into a vibrant, color-coded matrix. This visual tool employs a spectrum of colors to represent varying data values, where warmer hues indicate higher intensities and cooler tones signify lower values. Heatmaps excel in visualizing intricate data patterns, correlations, and anomalies, offering an accessible and engaging approach to data interpretation across diverse domains.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,7 +18,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Heatmaps using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Heatmaps using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
## Why Choose Heatmaps for Data Analysis?
|
||||
|
|
@ -31,15 +31,15 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
| Transportation | Retail |
|
||||
| :--------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Ultralytics YOLOv8 Transportation Heatmap | Ultralytics YOLOv8 Retail Heatmap |
|
||||
|  |  |
|
||||
| Ultralytics YOLO11 Transportation Heatmap | Ultralytics YOLO11 Retail Heatmap |
|
||||
|
||||
!!! tip "Heatmap Configuration"
|
||||
|
||||
- `heatmap_alpha`: Ensure this value is within the range (0.0 - 1.0).
|
||||
- `decay_factor`: Used for removing heatmap after an object is no longer in the frame, its value should also be in the range (0.0 - 1.0).
|
||||
|
||||
!!! example "Heatmaps using Ultralytics YOLOv8 Example"
|
||||
!!! example "Heatmaps using Ultralytics YOLO11 Example"
|
||||
|
||||
=== "Heatmap"
|
||||
|
||||
|
|
@ -48,7 +48,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -86,7 +86,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -127,7 +127,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -169,7 +169,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -211,7 +211,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8s.pt") # YOLOv8 custom/pretrained model
|
||||
model = YOLO("yolo11n.pt") # YOLO11 custom/pretrained model
|
||||
|
||||
im0 = cv2.imread("path/to/image.png") # path to image file
|
||||
h, w = im0.shape[:2] # image height and width
|
||||
|
|
@ -236,7 +236,7 @@ A heatmap generated with [Ultralytics YOLOv8](https://github.com/ultralytics/ult
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -326,20 +326,20 @@ These colormaps are commonly used for visualizing data with different color repr
|
|||
|
||||
## FAQ
|
||||
|
||||
### How does Ultralytics YOLOv8 generate heatmaps and what are their benefits?
|
||||
### How does Ultralytics YOLO11 generate heatmaps and what are their benefits?
|
||||
|
||||
Ultralytics YOLOv8 generates heatmaps by transforming complex data into a color-coded matrix where different hues represent data intensities. Heatmaps make it easier to visualize patterns, correlations, and anomalies in the data. Warmer hues indicate higher values, while cooler tones represent lower values. The primary benefits include intuitive visualization of data distribution, efficient pattern detection, and enhanced spatial analysis for decision-making. For more details and configuration options, refer to the [Heatmap Configuration](#arguments-heatmap) section.
|
||||
Ultralytics YOLO11 generates heatmaps by transforming complex data into a color-coded matrix where different hues represent data intensities. Heatmaps make it easier to visualize patterns, correlations, and anomalies in the data. Warmer hues indicate higher values, while cooler tones represent lower values. The primary benefits include intuitive visualization of data distribution, efficient pattern detection, and enhanced spatial analysis for decision-making. For more details and configuration options, refer to the [Heatmap Configuration](#arguments-heatmap) section.
|
||||
|
||||
### Can I use Ultralytics YOLOv8 to perform object tracking and generate a heatmap simultaneously?
|
||||
### Can I use Ultralytics YOLO11 to perform object tracking and generate a heatmap simultaneously?
|
||||
|
||||
Yes, Ultralytics YOLOv8 supports object tracking and heatmap generation concurrently. This can be achieved through its `Heatmap` solution integrated with object tracking models. To do so, you need to initialize the heatmap object and use YOLOv8's tracking capabilities. Here's a simple example:
|
||||
Yes, Ultralytics YOLO11 supports object tracking and heatmap generation concurrently. This can be achieved through its `Heatmap` solution integrated with object tracking models. To do so, you need to initialize the heatmap object and use YOLO11's tracking capabilities. Here's a simple example:
|
||||
|
||||
```python
|
||||
import cv2
|
||||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
heatmap_obj = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, view_img=True, shape="circle", names=model.names)
|
||||
|
||||
|
|
@ -359,11 +359,11 @@ cv2.destroyAllWindows()
|
|||
|
||||
For further guidance, check the [Tracking Mode](../modes/track.md) page.
|
||||
|
||||
### What makes Ultralytics YOLOv8 heatmaps different from other data visualization tools like those from [OpenCV](https://www.ultralytics.com/glossary/opencv) or Matplotlib?
|
||||
### What makes Ultralytics YOLO11 heatmaps different from other data visualization tools like those from [OpenCV](https://www.ultralytics.com/glossary/opencv) or Matplotlib?
|
||||
|
||||
Ultralytics YOLOv8 heatmaps are specifically designed for integration with its [object detection](https://www.ultralytics.com/glossary/object-detection) and tracking models, providing an end-to-end solution for real-time data analysis. Unlike generic visualization tools like OpenCV or Matplotlib, YOLOv8 heatmaps are optimized for performance and automated processing, supporting features like persistent tracking, decay factor adjustment, and real-time video overlay. For more information on YOLOv8's unique features, visit the [Ultralytics YOLOv8 Introduction](https://www.ultralytics.com/blog/introducing-ultralytics-yolov8).
|
||||
Ultralytics YOLO11 heatmaps are specifically designed for integration with its [object detection](https://www.ultralytics.com/glossary/object-detection) and tracking models, providing an end-to-end solution for real-time data analysis. Unlike generic visualization tools like OpenCV or Matplotlib, YOLO11 heatmaps are optimized for performance and automated processing, supporting features like persistent tracking, decay factor adjustment, and real-time video overlay. For more information on YOLO11's unique features, visit the [Ultralytics YOLO11 Introduction](https://www.ultralytics.com/blog/introducing-ultralytics-yolov8).
|
||||
|
||||
### How can I visualize only specific object classes in heatmaps using Ultralytics YOLOv8?
|
||||
### How can I visualize only specific object classes in heatmaps using Ultralytics YOLO11?
|
||||
|
||||
You can visualize specific object classes by specifying the desired classes in the `track()` method of the YOLO model. For instance, if you only want to visualize cars and persons (assuming their class indices are 0 and 2), you can set the `classes` parameter accordingly.
|
||||
|
||||
|
|
@ -372,7 +372,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
heatmap_obj = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, view_img=True, shape="circle", names=model.names)
|
||||
|
||||
|
|
@ -391,6 +391,6 @@ cap.release()
|
|||
cv2.destroyAllWindows()
|
||||
```
|
||||
|
||||
### Why should businesses choose Ultralytics YOLOv8 for heatmap generation in data analysis?
|
||||
### Why should businesses choose Ultralytics YOLO11 for heatmap generation in data analysis?
|
||||
|
||||
Ultralytics YOLOv8 offers seamless integration of advanced object detection and real-time heatmap generation, making it an ideal choice for businesses looking to visualize data more effectively. The key advantages include intuitive data distribution visualization, efficient pattern detection, and enhanced spatial analysis for better decision-making. Additionally, YOLOv8's cutting-edge features such as persistent tracking, customizable colormaps, and support for various export formats make it superior to other tools like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) and OpenCV for comprehensive data analysis. Learn more about business applications at [Ultralytics Plans](https://www.ultralytics.com/plans).
|
||||
Ultralytics YOLO11 offers seamless integration of advanced object detection and real-time heatmap generation, making it an ideal choice for businesses looking to visualize data more effectively. The key advantages include intuitive data distribution visualization, efficient pattern detection, and enhanced spatial analysis for better decision-making. Additionally, YOLO11's cutting-edge features such as persistent tracking, customizable colormaps, and support for various export formats make it superior to other tools like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) and OpenCV for comprehensive data analysis. Learn more about business applications at [Ultralytics Plans](https://www.ultralytics.com/plans).
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ Hyperparameters are high-level, structural settings for the algorithm. They are
|
|||
<img width="640" src="https://github.com/ultralytics/docs/releases/download/0/hyperparameter-tuning-visual.avif" alt="Hyperparameter Tuning Visual">
|
||||
</p>
|
||||
|
||||
For a full list of augmentation hyperparameters used in YOLOv8 please refer to the [configurations page](../usage/cfg.md#augmentation-settings).
|
||||
For a full list of augmentation hyperparameters used in YOLO11 please refer to the [configurations page](../usage/cfg.md#augmentation-settings).
|
||||
|
||||
### Genetic Evolution and Mutation
|
||||
|
||||
|
|
@ -67,7 +67,7 @@ The process is repeated until either the set number of iterations is reached or
|
|||
|
||||
## Usage Example
|
||||
|
||||
Here's how to use the `model.tune()` method to utilize the `Tuner` class for hyperparameter tuning of YOLOv8n on COCO8 for 30 epochs with an AdamW optimizer and skipping plotting, checkpointing and validation other than on final epoch for faster Tuning.
|
||||
Here's how to use the `model.tune()` method to utilize the `Tuner` class for hyperparameter tuning of YOLO11n on COCO8 for 30 epochs with an AdamW optimizer and skipping plotting, checkpointing and validation other than on final epoch for faster Tuning.
|
||||
|
||||
!!! example
|
||||
|
||||
|
|
@ -77,7 +77,7 @@ Here's how to use the `model.tune()` method to utilize the `Tuner` class for hyp
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Initialize the YOLO model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Tune hyperparameters on COCO8 for 30 epochs
|
||||
model.tune(data="coco8.yaml", epochs=30, iterations=300, optimizer="AdamW", plots=False, save=False, val=False)
|
||||
|
|
@ -202,7 +202,7 @@ The hyperparameter tuning process in Ultralytics YOLO is simplified yet powerful
|
|||
|
||||
1. [Hyperparameter Optimization in Wikipedia](https://en.wikipedia.org/wiki/Hyperparameter_optimization)
|
||||
2. [YOLOv5 Hyperparameter Evolution Guide](../yolov5/tutorials/hyperparameter_evolution.md)
|
||||
3. [Efficient Hyperparameter Tuning with Ray Tune and YOLOv8](../integrations/ray-tune.md)
|
||||
3. [Efficient Hyperparameter Tuning with Ray Tune and YOLO11](../integrations/ray-tune.md)
|
||||
|
||||
For deeper insights, you can explore the `Tuner` class source code and accompanying documentation. Should you have any questions, feature requests, or need further assistance, feel free to reach out to us on [GitHub](https://github.com/ultralytics/ultralytics/issues/new/choose) or [Discord](https://discord.com/invite/ultralytics).
|
||||
|
||||
|
|
@ -220,7 +220,7 @@ To optimize the learning rate for Ultralytics YOLO, start by setting an initial
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Initialize the YOLO model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Tune hyperparameters on COCO8 for 30 epochs
|
||||
model.tune(data="coco8.yaml", epochs=30, iterations=300, optimizer="AdamW", plots=False, save=False, val=False)
|
||||
|
|
@ -228,9 +228,9 @@ To optimize the learning rate for Ultralytics YOLO, start by setting an initial
|
|||
|
||||
For more details, check the [Ultralytics YOLO configuration page](../usage/cfg.md#augmentation-settings).
|
||||
|
||||
### What are the benefits of using genetic algorithms for hyperparameter tuning in YOLOv8?
|
||||
### What are the benefits of using genetic algorithms for hyperparameter tuning in YOLO11?
|
||||
|
||||
Genetic algorithms in Ultralytics YOLOv8 provide a robust method for exploring the hyperparameter space, leading to highly optimized model performance. Key benefits include:
|
||||
Genetic algorithms in Ultralytics YOLO11 provide a robust method for exploring the hyperparameter space, leading to highly optimized model performance. Key benefits include:
|
||||
|
||||
- **Efficient Search**: Genetic algorithms like mutation can quickly explore a large set of hyperparameters.
|
||||
- **Avoiding Local Minima**: By introducing randomness, they help in avoiding local minima, ensuring better global optimization.
|
||||
|
|
@ -240,7 +240,7 @@ To see how genetic algorithms can optimize hyperparameters, check out the [hyper
|
|||
|
||||
### How long does the hyperparameter tuning process take for Ultralytics YOLO?
|
||||
|
||||
The time required for hyperparameter tuning with Ultralytics YOLO largely depends on several factors such as the size of the dataset, the complexity of the model architecture, the number of iterations, and the computational resources available. For instance, tuning YOLOv8n on a dataset like COCO8 for 30 epochs might take several hours to days, depending on the hardware.
|
||||
The time required for hyperparameter tuning with Ultralytics YOLO largely depends on several factors such as the size of the dataset, the complexity of the model architecture, the number of iterations, and the computational resources available. For instance, tuning YOLO11n on a dataset like COCO8 for 30 epochs might take several hours to days, depending on the hardware.
|
||||
|
||||
To effectively manage tuning time, define a clear tuning budget beforehand ([internal section link](#preparing-for-hyperparameter-tuning)). This helps in balancing resource allocation and optimization goals.
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ Whether you're a beginner or an expert in [deep learning](https://www.ultralytic
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Ultralytics YOLOv8 Guides Overview
|
||||
<strong>Watch:</strong> Ultralytics YOLO11 Guides Overview
|
||||
</p>
|
||||
|
||||
## Guides
|
||||
|
|
@ -30,14 +30,14 @@ Here's a compilation of in-depth guides to help you master different aspects of
|
|||
- [Model Deployment Options](model-deployment-options.md): Overview of YOLO [model deployment](https://www.ultralytics.com/glossary/model-deployment) formats like ONNX, OpenVINO, and TensorRT, with pros and cons for each to inform your deployment strategy.
|
||||
- [K-Fold Cross Validation](kfold-cross-validation.md) 🚀 NEW: Learn how to improve model generalization using K-Fold cross-validation technique.
|
||||
- [Hyperparameter Tuning](hyperparameter-tuning.md) 🚀 NEW: Discover how to optimize your YOLO models by fine-tuning hyperparameters using the Tuner class and genetic evolution algorithms.
|
||||
- [SAHI Tiled Inference](sahi-tiled-inference.md) 🚀 NEW: Comprehensive guide on leveraging SAHI's sliced inference capabilities with YOLOv8 for object detection in high-resolution images.
|
||||
- [SAHI Tiled Inference](sahi-tiled-inference.md) 🚀 NEW: Comprehensive guide on leveraging SAHI's sliced inference capabilities with YOLO11 for object detection in high-resolution images.
|
||||
- [AzureML Quickstart](azureml-quickstart.md) 🚀 NEW: Get up and running with Ultralytics YOLO models on Microsoft's Azure [Machine Learning](https://www.ultralytics.com/glossary/machine-learning-ml) platform. Learn how to train, deploy, and scale your object detection projects in the cloud.
|
||||
- [Conda Quickstart](conda-quickstart.md) 🚀 NEW: Step-by-step guide to setting up a [Conda](https://anaconda.org/conda-forge/ultralytics) environment for Ultralytics. Learn how to install and start using the Ultralytics package efficiently with Conda.
|
||||
- [Docker Quickstart](docker-quickstart.md) 🚀 NEW: Complete guide to setting up and using Ultralytics YOLO models with [Docker](https://hub.docker.com/r/ultralytics/ultralytics). Learn how to install Docker, manage GPU support, and run YOLO models in isolated containers for consistent development and deployment.
|
||||
- [Raspberry Pi](raspberry-pi.md) 🚀 NEW: Quickstart tutorial to run YOLO models to the latest Raspberry Pi hardware.
|
||||
- [NVIDIA Jetson](nvidia-jetson.md) 🚀 NEW: Quickstart guide for deploying YOLO models on NVIDIA Jetson devices.
|
||||
- [DeepStream on NVIDIA Jetson](deepstream-nvidia-jetson.md) 🚀 NEW: Quickstart guide for deploying YOLO models on NVIDIA Jetson devices using DeepStream and TensorRT.
|
||||
- [Triton Inference Server Integration](triton-inference-server.md) 🚀 NEW: Dive into the integration of Ultralytics YOLOv8 with NVIDIA's Triton Inference Server for scalable and efficient deep learning inference deployments.
|
||||
- [Triton Inference Server Integration](triton-inference-server.md) 🚀 NEW: Dive into the integration of Ultralytics YOLO11 with NVIDIA's Triton Inference Server for scalable and efficient deep learning inference deployments.
|
||||
- [YOLO Thread-Safe Inference](yolo-thread-safe-inference.md) 🚀 NEW: Guidelines for performing inference with YOLO models in a thread-safe manner. Learn the importance of thread safety and best practices to prevent race conditions and ensure consistent predictions.
|
||||
- [Isolating Segmentation Objects](isolating-segmentation-objects.md) 🚀 NEW: Step-by-step recipe and explanation on how to extract and/or isolate objects from images using Ultralytics Segmentation.
|
||||
- [Edge TPU on Raspberry Pi](coral-edge-tpu-on-raspberry-pi.md): [Google Edge TPU](https://coral.ai/products/accelerator) accelerates YOLO inference on [Raspberry Pi](https://www.raspberrypi.com/).
|
||||
|
|
@ -46,7 +46,7 @@ Here's a compilation of in-depth guides to help you master different aspects of
|
|||
- [Steps of a Computer Vision Project ](steps-of-a-cv-project.md) 🚀 NEW: Learn about the key steps involved in a computer vision project, including defining goals, selecting models, preparing data, and evaluating results.
|
||||
- [Defining A Computer Vision Project's Goals](defining-project-goals.md) 🚀 NEW: Walk through how to effectively define clear and measurable goals for your computer vision project. Learn the importance of a well-defined problem statement and how it creates a roadmap for your project.
|
||||
- [Data Collection and Annotation](data-collection-and-annotation.md) 🚀 NEW: Explore the tools, techniques, and best practices for collecting and annotating data to create high-quality inputs for your computer vision models.
|
||||
- [Preprocessing Annotated Data](preprocessing_annotated_data.md) 🚀 NEW: Learn about preprocessing and augmenting image data in computer vision projects using YOLOv8, including normalization, dataset augmentation, splitting, and exploratory data analysis (EDA).
|
||||
- [Preprocessing Annotated Data](preprocessing_annotated_data.md) 🚀 NEW: Learn about preprocessing and augmenting image data in computer vision projects using YOLO11, including normalization, dataset augmentation, splitting, and exploratory data analysis (EDA).
|
||||
- [Tips for Model Training](model-training-tips.md) 🚀 NEW: Explore tips on optimizing [batch sizes](https://www.ultralytics.com/glossary/batch-size), using [mixed precision](https://www.ultralytics.com/glossary/mixed-precision), applying pre-trained weights, and more to make training your computer vision model a breeze.
|
||||
- [Insights on Model Evaluation and Fine-Tuning](model-evaluation-insights.md) 🚀 NEW: Gain insights into the strategies and best practices for evaluating and fine-tuning your computer vision models. Learn about the iterative process of refining models to achieve optimal results.
|
||||
- [A Guide on Model Testing](model-testing.md) 🚀 NEW: A thorough guide on testing your computer vision models in realistic settings. Learn how to verify accuracy, reliability, and performance in line with project goals.
|
||||
|
|
@ -75,14 +75,14 @@ Training a custom object detection model with Ultralytics YOLO is straightforwar
|
|||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8s.pt") # Load a pre-trained YOLO model
|
||||
model = YOLO("yolo11n.pt") # Load a pre-trained YOLO model
|
||||
model.train(data="path/to/dataset.yaml", epochs=50) # Train on custom dataset
|
||||
```
|
||||
|
||||
=== "CLI"
|
||||
|
||||
```bash
|
||||
yolo task=detect mode=train model=yolov8s.pt data=path/to/dataset.yaml epochs=50
|
||||
yolo task=detect mode=train model=yolo11n.pt data=path/to/dataset.yaml epochs=50
|
||||
```
|
||||
|
||||
For detailed dataset formatting and additional options, refer to our [Tips for Model Training](model-training-tips.md) guide.
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Master instance segmentation and tracking with Ultralytics YOLOv8. Learn techniques for precise object identification and tracking.
|
||||
keywords: instance segmentation, tracking, YOLOv8, Ultralytics, object detection, machine learning, computer vision, python
|
||||
description: Master instance segmentation and tracking with Ultralytics YOLO11. Learn techniques for precise object identification and tracking.
|
||||
keywords: instance segmentation, tracking, YOLO11, Ultralytics, object detection, machine learning, computer vision, python
|
||||
---
|
||||
|
||||
# Instance Segmentation and Tracking using Ultralytics YOLOv8 🚀
|
||||
# Instance Segmentation and Tracking using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is [Instance Segmentation](https://www.ultralytics.com/glossary/instance-segmentation)?
|
||||
|
||||
[Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) instance segmentation involves identifying and outlining individual objects in an image, providing a detailed understanding of spatial distribution. Unlike [semantic segmentation](https://www.ultralytics.com/glossary/semantic-segmentation), it uniquely labels and precisely delineates each object, crucial for tasks like [object detection](https://www.ultralytics.com/glossary/object-detection) and medical imaging.
|
||||
[Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) instance segmentation involves identifying and outlining individual objects in an image, providing a detailed understanding of spatial distribution. Unlike [semantic segmentation](https://www.ultralytics.com/glossary/semantic-segmentation), it uniquely labels and precisely delineates each object, crucial for tasks like [object detection](https://www.ultralytics.com/glossary/object-detection) and medical imaging.
|
||||
|
||||
There are two types of instance segmentation tracking available in the Ultralytics package:
|
||||
|
||||
|
|
@ -24,7 +24,7 @@ There are two types of instance segmentation tracking available in the Ultralyti
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Instance Segmentation with Object Tracking using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Instance Segmentation with Object Tracking using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
## Samples
|
||||
|
|
@ -44,7 +44,7 @@ There are two types of instance segmentation tracking available in the Ultralyti
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n-seg.pt") # segmentation model
|
||||
model = YOLO("yolo11n-seg.pt") # segmentation model
|
||||
names = model.model.names
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -91,7 +91,7 @@ There are two types of instance segmentation tracking available in the Ultralyti
|
|||
|
||||
track_history = defaultdict(lambda: [])
|
||||
|
||||
model = YOLO("yolov8n-seg.pt") # segmentation model
|
||||
model = YOLO("yolo11n-seg.pt") # segmentation model
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
||||
|
|
@ -142,9 +142,9 @@ For any inquiries, feel free to post your questions in the [Ultralytics Issue Se
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I perform instance segmentation using Ultralytics YOLOv8?
|
||||
### How do I perform instance segmentation using Ultralytics YOLO11?
|
||||
|
||||
To perform instance segmentation using Ultralytics YOLOv8, initialize the YOLO model with a segmentation version of YOLOv8 and process video frames through it. Here's a simplified code example:
|
||||
To perform instance segmentation using Ultralytics YOLO11, initialize the YOLO model with a segmentation version of YOLO11 and process video frames through it. Here's a simplified code example:
|
||||
|
||||
!!! example
|
||||
|
||||
|
|
@ -156,7 +156,7 @@ To perform instance segmentation using Ultralytics YOLOv8, initialize the YOLO m
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n-seg.pt") # segmentation model
|
||||
model = YOLO("yolo11n-seg.pt") # segmentation model
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
||||
|
|
@ -186,17 +186,17 @@ To perform instance segmentation using Ultralytics YOLOv8, initialize the YOLO m
|
|||
cv2.destroyAllWindows()
|
||||
```
|
||||
|
||||
Learn more about instance segmentation in the [Ultralytics YOLOv8 guide](#what-is-instance-segmentation).
|
||||
Learn more about instance segmentation in the [Ultralytics YOLO11 guide](#what-is-instance-segmentation).
|
||||
|
||||
### What is the difference between instance segmentation and object tracking in Ultralytics YOLOv8?
|
||||
### What is the difference between instance segmentation and object tracking in Ultralytics YOLO11?
|
||||
|
||||
Instance segmentation identifies and outlines individual objects within an image, giving each object a unique label and mask. Object tracking extends this by assigning consistent labels to objects across video frames, facilitating continuous tracking of the same objects over time. Learn more about the distinctions in the [Ultralytics YOLOv8 documentation](#samples).
|
||||
Instance segmentation identifies and outlines individual objects within an image, giving each object a unique label and mask. Object tracking extends this by assigning consistent labels to objects across video frames, facilitating continuous tracking of the same objects over time. Learn more about the distinctions in the [Ultralytics YOLO11 documentation](#samples).
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for instance segmentation and tracking over other models like Mask R-CNN or Faster R-CNN?
|
||||
### Why should I use Ultralytics YOLO11 for instance segmentation and tracking over other models like Mask R-CNN or Faster R-CNN?
|
||||
|
||||
Ultralytics YOLOv8 offers real-time performance, superior [accuracy](https://www.ultralytics.com/glossary/accuracy), and ease of use compared to other models like Mask R-CNN or Faster R-CNN. YOLOv8 provides a seamless integration with Ultralytics HUB, allowing users to manage models, datasets, and training pipelines efficiently. Discover more about the benefits of YOLOv8 in the [Ultralytics blog](https://www.ultralytics.com/blog/introducing-ultralytics-yolov8).
|
||||
Ultralytics YOLO11 offers real-time performance, superior [accuracy](https://www.ultralytics.com/glossary/accuracy), and ease of use compared to other models like Mask R-CNN or Faster R-CNN. YOLO11 provides a seamless integration with Ultralytics HUB, allowing users to manage models, datasets, and training pipelines efficiently. Discover more about the benefits of YOLO11 in the [Ultralytics blog](https://www.ultralytics.com/blog/introducing-ultralytics-yolov8).
|
||||
|
||||
### How can I implement object tracking using Ultralytics YOLOv8?
|
||||
### How can I implement object tracking using Ultralytics YOLO11?
|
||||
|
||||
To implement object tracking, use the `model.track` method and ensure that each object's ID is consistently assigned across frames. Below is a simple example:
|
||||
|
||||
|
|
@ -214,7 +214,7 @@ To implement object tracking, use the `model.track` method and ensure that each
|
|||
|
||||
track_history = defaultdict(lambda: [])
|
||||
|
||||
model = YOLO("yolov8n-seg.pt") # segmentation model
|
||||
model = YOLO("yolo11n-seg.pt") # segmentation model
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
||||
|
|
@ -247,6 +247,6 @@ To implement object tracking, use the `model.track` method and ensure that each
|
|||
|
||||
Find more in the [Instance Segmentation and Tracking section](#samples).
|
||||
|
||||
### Are there any datasets provided by Ultralytics suitable for training YOLOv8 models for instance segmentation and tracking?
|
||||
### Are there any datasets provided by Ultralytics suitable for training YOLO11 models for instance segmentation and tracking?
|
||||
|
||||
Yes, Ultralytics offers several datasets suitable for training YOLOv8 models, including segmentation and tracking datasets. Dataset examples, structures, and instructions for use can be found in the [Ultralytics Datasets documentation](https://docs.ultralytics.com/datasets/).
|
||||
Yes, Ultralytics offers several datasets suitable for training YOLO11 models, including segmentation and tracking datasets. Dataset examples, structures, and instructions for use can be found in the [Ultralytics Datasets documentation](https://docs.ultralytics.com/datasets/).
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn to extract isolated objects from inference results using Ultralytics Predict Mode. Step-by-step guide for segmentation object isolation.
|
||||
keywords: Ultralytics, segmentation, object isolation, Predict Mode, YOLOv8, machine learning, object detection, binary mask, image processing
|
||||
keywords: Ultralytics, segmentation, object isolation, Predict Mode, YOLO11, machine learning, object detection, binary mask, image processing
|
||||
---
|
||||
|
||||
# Isolating Segmentation Objects
|
||||
|
|
@ -24,7 +24,7 @@ After performing the [Segment Task](../tasks/segment.md), it's sometimes desirab
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n-seg.pt")
|
||||
model = YOLO("yolo11n-seg.pt")
|
||||
|
||||
# Run inference
|
||||
results = model.predict()
|
||||
|
|
@ -267,7 +267,7 @@ import numpy as np
|
|||
|
||||
from ultralytics import YOLO
|
||||
|
||||
m = YOLO("yolov8n-seg.pt") # (4)!
|
||||
m = YOLO("yolo11n-seg.pt") # (4)!
|
||||
res = m.predict() # (3)!
|
||||
|
||||
# Iterate detection results (5)
|
||||
|
|
@ -310,16 +310,16 @@ for r in res:
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I isolate objects using Ultralytics YOLOv8 for segmentation tasks?
|
||||
### How do I isolate objects using Ultralytics YOLO11 for segmentation tasks?
|
||||
|
||||
To isolate objects using Ultralytics YOLOv8, follow these steps:
|
||||
To isolate objects using Ultralytics YOLO11, follow these steps:
|
||||
|
||||
1. **Load the model and run inference:**
|
||||
|
||||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n-seg.pt")
|
||||
model = YOLO("yolo11n-seg.pt")
|
||||
results = model.predict(source="path/to/your/image.jpg")
|
||||
```
|
||||
|
||||
|
|
@ -345,7 +345,7 @@ Refer to the guide on [Predict Mode](../modes/predict.md) and the [Segment Task]
|
|||
|
||||
### What options are available for saving the isolated objects after segmentation?
|
||||
|
||||
Ultralytics YOLOv8 offers two main options for saving isolated objects:
|
||||
Ultralytics YOLO11 offers two main options for saving isolated objects:
|
||||
|
||||
1. **With a Black Background:**
|
||||
|
||||
|
|
@ -361,7 +361,7 @@ Ultralytics YOLOv8 offers two main options for saving isolated objects:
|
|||
|
||||
For further details, visit the [Predict Mode](../modes/predict.md) section.
|
||||
|
||||
### How can I crop isolated objects to their bounding boxes using Ultralytics YOLOv8?
|
||||
### How can I crop isolated objects to their bounding boxes using Ultralytics YOLO11?
|
||||
|
||||
To crop isolated objects to their bounding boxes:
|
||||
|
||||
|
|
@ -378,9 +378,9 @@ To crop isolated objects to their bounding boxes:
|
|||
|
||||
Learn more about bounding box results in the [Predict Mode](../modes/predict.md#boxes) documentation.
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for object isolation in segmentation tasks?
|
||||
### Why should I use Ultralytics YOLO11 for object isolation in segmentation tasks?
|
||||
|
||||
Ultralytics YOLOv8 provides:
|
||||
Ultralytics YOLO11 provides:
|
||||
|
||||
- **High-speed** real-time object detection and segmentation.
|
||||
- **Accurate bounding box and mask generation** for precise object isolation.
|
||||
|
|
@ -388,9 +388,9 @@ Ultralytics YOLOv8 provides:
|
|||
|
||||
Explore the benefits of using YOLO in the [Segment Task documentation](../tasks/segment.md).
|
||||
|
||||
### Can I save isolated objects including the background using Ultralytics YOLOv8?
|
||||
### Can I save isolated objects including the background using Ultralytics YOLO11?
|
||||
|
||||
Yes, this is a built-in feature in Ultralytics YOLOv8. Use the `save_crop` argument in the `predict()` method. For example:
|
||||
Yes, this is a built-in feature in Ultralytics YOLO11. Use the `save_crop` argument in the `predict()` method. For example:
|
||||
|
||||
```python
|
||||
results = model.predict(source="path/to/your/image.jpg", save_crop=True)
|
||||
|
|
|
|||
|
|
@ -1,26 +1,26 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn about YOLOv8's diverse deployment options to maximize your model's performance. Explore PyTorch, TensorRT, OpenVINO, TF Lite, and more!.
|
||||
keywords: YOLOv8, deployment options, export formats, PyTorch, TensorRT, OpenVINO, TF Lite, machine learning, model deployment
|
||||
description: Learn about YOLO11's diverse deployment options to maximize your model's performance. Explore PyTorch, TensorRT, OpenVINO, TF Lite, and more!.
|
||||
keywords: YOLO11, deployment options, export formats, PyTorch, TensorRT, OpenVINO, TF Lite, machine learning, model deployment
|
||||
---
|
||||
|
||||
# Understanding YOLOv8's Deployment Options
|
||||
# Understanding YOLO11's Deployment Options
|
||||
|
||||
## Introduction
|
||||
|
||||
You've come a long way on your journey with YOLOv8. You've diligently collected data, meticulously annotated it, and put in the hours to train and rigorously evaluate your custom YOLOv8 model. Now, it's time to put your model to work for your specific application, use case, or project. But there's a critical decision that stands before you: how to export and deploy your model effectively.
|
||||
You've come a long way on your journey with YOLO11. You've diligently collected data, meticulously annotated it, and put in the hours to train and rigorously evaluate your custom YOLO11 model. Now, it's time to put your model to work for your specific application, use case, or project. But there's a critical decision that stands before you: how to export and deploy your model effectively.
|
||||
|
||||
This guide walks you through YOLOv8's deployment options and the essential factors to consider to choose the right option for your project.
|
||||
This guide walks you through YOLO11's deployment options and the essential factors to consider to choose the right option for your project.
|
||||
|
||||
## How to Select the Right Deployment Option for Your YOLOv8 Model
|
||||
## How to Select the Right Deployment Option for Your YOLO11 Model
|
||||
|
||||
When it's time to deploy your YOLOv8 model, selecting a suitable export format is very important. As outlined in the [Ultralytics YOLOv8 Modes documentation](../modes/export.md#usage-examples), the model.export() function allows for converting your trained model into a variety of formats tailored to diverse environments and performance requirements.
|
||||
When it's time to deploy your YOLO11 model, selecting a suitable export format is very important. As outlined in the [Ultralytics YOLO11 Modes documentation](../modes/export.md#usage-examples), the model.export() function allows for converting your trained model into a variety of formats tailored to diverse environments and performance requirements.
|
||||
|
||||
The ideal format depends on your model's intended operational context, balancing speed, hardware constraints, and ease of integration. In the following section, we'll take a closer look at each export option, understanding when to choose each one.
|
||||
|
||||
### YOLOv8's Deployment Options
|
||||
### YOLO11's Deployment Options
|
||||
|
||||
Let's walk through the different YOLOv8 deployment options. For a detailed walkthrough of the export process, visit the [Ultralytics documentation page on exporting](../modes/export.md).
|
||||
Let's walk through the different YOLO11 deployment options. For a detailed walkthrough of the export process, visit the [Ultralytics documentation page on exporting](../modes/export.md).
|
||||
|
||||
#### PyTorch
|
||||
|
||||
|
|
@ -258,9 +258,9 @@ NCNN is a high-performance neural network inference framework optimized for the
|
|||
|
||||
- **Hardware Acceleration**: Tailored for ARM CPUs and GPUs, with specific optimizations for these architectures.
|
||||
|
||||
## Comparative Analysis of YOLOv8 Deployment Options
|
||||
## Comparative Analysis of YOLO11 Deployment Options
|
||||
|
||||
The following table provides a snapshot of the various deployment options available for YOLOv8 models, helping you to assess which may best fit your project needs based on several critical criteria. For an in-depth look at each deployment option's format, please see the [Ultralytics documentation page on export formats](../modes/export.md#export-formats).
|
||||
The following table provides a snapshot of the various deployment options available for YOLO11 models, helping you to assess which may best fit your project needs based on several critical criteria. For an in-depth look at each deployment option's format, please see the [Ultralytics documentation page on export formats](../modes/export.md#export-formats).
|
||||
|
||||
| Deployment Option | Performance Benchmarks | Compatibility and Integration | Community Support and Ecosystem | Case Studies | Maintenance and Updates | Security Considerations | Hardware Acceleration |
|
||||
| ----------------- | ----------------------------------------------- | ---------------------------------------------- | --------------------------------------------- | ------------------------------------------ | ------------------------------------------- | ------------------------------------------------- | ---------------------------------- |
|
||||
|
|
@ -282,33 +282,33 @@ This comparative analysis gives you a high-level overview. For deployment, it's
|
|||
|
||||
## Community and Support
|
||||
|
||||
When you're getting started with YOLOv8, having a helpful community and support can make a significant impact. Here's how to connect with others who share your interests and get the assistance you need.
|
||||
When you're getting started with YOLO11, having a helpful community and support can make a significant impact. Here's how to connect with others who share your interests and get the assistance you need.
|
||||
|
||||
### Engage with the Broader Community
|
||||
|
||||
- **GitHub Discussions:** The YOLOv8 repository on GitHub has a "Discussions" section where you can ask questions, report issues, and suggest improvements.
|
||||
- **GitHub Discussions:** The YOLO11 repository on GitHub has a "Discussions" section where you can ask questions, report issues, and suggest improvements.
|
||||
|
||||
- **Ultralytics Discord Server:** Ultralytics has a [Discord server](https://discord.com/invite/ultralytics) where you can interact with other users and developers.
|
||||
|
||||
### Official Documentation and Resources
|
||||
|
||||
- **Ultralytics YOLOv8 Docs:** The [official documentation](../index.md) provides a comprehensive overview of YOLOv8, along with guides on installation, usage, and troubleshooting.
|
||||
- **Ultralytics YOLO11 Docs:** The [official documentation](../index.md) provides a comprehensive overview of YOLO11, along with guides on installation, usage, and troubleshooting.
|
||||
|
||||
These resources will help you tackle challenges and stay updated on the latest trends and best practices in the YOLOv8 community.
|
||||
These resources will help you tackle challenges and stay updated on the latest trends and best practices in the YOLO11 community.
|
||||
|
||||
## Conclusion
|
||||
|
||||
In this guide, we've explored the different deployment options for YOLOv8. We've also discussed the important factors to consider when making your choice. These options allow you to customize your model for various environments and performance requirements, making it suitable for real-world applications.
|
||||
In this guide, we've explored the different deployment options for YOLO11. We've also discussed the important factors to consider when making your choice. These options allow you to customize your model for various environments and performance requirements, making it suitable for real-world applications.
|
||||
|
||||
Don't forget that the YOLOv8 and Ultralytics community is a valuable source of help. Connect with other developers and experts to learn unique tips and solutions you might not find in regular documentation. Keep seeking knowledge, exploring new ideas, and sharing your experiences.
|
||||
Don't forget that the YOLO11 and Ultralytics community is a valuable source of help. Connect with other developers and experts to learn unique tips and solutions you might not find in regular documentation. Keep seeking knowledge, exploring new ideas, and sharing your experiences.
|
||||
|
||||
Happy deploying!
|
||||
|
||||
## FAQ
|
||||
|
||||
### What are the deployment options available for YOLOv8 on different hardware platforms?
|
||||
### What are the deployment options available for YOLO11 on different hardware platforms?
|
||||
|
||||
Ultralytics YOLOv8 supports various deployment formats, each designed for specific environments and hardware platforms. Key formats include:
|
||||
Ultralytics YOLO11 supports various deployment formats, each designed for specific environments and hardware platforms. Key formats include:
|
||||
|
||||
- **PyTorch** for research and prototyping, with excellent Python integration.
|
||||
- **TorchScript** for production environments where Python is unavailable.
|
||||
|
|
@ -318,18 +318,18 @@ Ultralytics YOLOv8 supports various deployment formats, each designed for specif
|
|||
|
||||
Each format has unique advantages. For a detailed walkthrough, see our [export process documentation](../modes/export.md#usage-examples).
|
||||
|
||||
### How do I improve the inference speed of my YOLOv8 model on an Intel CPU?
|
||||
### How do I improve the inference speed of my YOLO11 model on an Intel CPU?
|
||||
|
||||
To enhance inference speed on Intel CPUs, you can deploy your YOLOv8 model using Intel's OpenVINO toolkit. OpenVINO offers significant performance boosts by optimizing models to leverage Intel hardware efficiently.
|
||||
To enhance inference speed on Intel CPUs, you can deploy your YOLO11 model using Intel's OpenVINO toolkit. OpenVINO offers significant performance boosts by optimizing models to leverage Intel hardware efficiently.
|
||||
|
||||
1. Convert your YOLOv8 model to the OpenVINO format using the `model.export()` function.
|
||||
1. Convert your YOLO11 model to the OpenVINO format using the `model.export()` function.
|
||||
2. Follow the detailed setup guide in the [Intel OpenVINO Export documentation](../integrations/openvino.md).
|
||||
|
||||
For more insights, check out our [blog post](https://www.ultralytics.com/blog/achieve-faster-inference-speeds-ultralytics-yolov8-openvino).
|
||||
|
||||
### Can I deploy YOLOv8 models on mobile devices?
|
||||
### Can I deploy YOLO11 models on mobile devices?
|
||||
|
||||
Yes, YOLOv8 models can be deployed on mobile devices using [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) Lite (TF Lite) for both Android and iOS platforms. TF Lite is designed for mobile and embedded devices, providing efficient on-device inference.
|
||||
Yes, YOLO11 models can be deployed on mobile devices using [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) Lite (TF Lite) for both Android and iOS platforms. TF Lite is designed for mobile and embedded devices, providing efficient on-device inference.
|
||||
|
||||
!!! example
|
||||
|
||||
|
|
@ -349,9 +349,9 @@ Yes, YOLOv8 models can be deployed on mobile devices using [TensorFlow](https://
|
|||
|
||||
For more details on deploying models to mobile, refer to our [TF Lite integration guide](../integrations/tflite.md).
|
||||
|
||||
### What factors should I consider when choosing a deployment format for my YOLOv8 model?
|
||||
### What factors should I consider when choosing a deployment format for my YOLO11 model?
|
||||
|
||||
When choosing a deployment format for YOLOv8, consider the following factors:
|
||||
When choosing a deployment format for YOLO11, consider the following factors:
|
||||
|
||||
- **Performance**: Some formats like TensorRT provide exceptional speeds on NVIDIA GPUs, while OpenVINO is optimized for Intel hardware.
|
||||
- **Compatibility**: ONNX offers broad compatibility across different platforms.
|
||||
|
|
@ -360,11 +360,11 @@ When choosing a deployment format for YOLOv8, consider the following factors:
|
|||
|
||||
For a comparative analysis, refer to our [export formats documentation](../modes/export.md#export-formats).
|
||||
|
||||
### How can I deploy YOLOv8 models in a web application?
|
||||
### How can I deploy YOLO11 models in a web application?
|
||||
|
||||
To deploy YOLOv8 models in a web application, you can use TensorFlow.js (TF.js), which allows for running [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) models directly in the browser. This approach eliminates the need for backend infrastructure and provides real-time performance.
|
||||
To deploy YOLO11 models in a web application, you can use TensorFlow.js (TF.js), which allows for running [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) models directly in the browser. This approach eliminates the need for backend infrastructure and provides real-time performance.
|
||||
|
||||
1. Export the YOLOv8 model to the TF.js format.
|
||||
1. Export the YOLO11 model to the TF.js format.
|
||||
2. Integrate the exported model into your web application.
|
||||
|
||||
For step-by-step instructions, refer to our guide on [TensorFlow.js integration](../integrations/tfjs.md).
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ It's also important to follow best practices when deploying a model because depl
|
|||
|
||||
Often times, once a model is [trained](./model-training-tips.md), [evaluated](./model-evaluation-insights.md), and [tested](./model-testing.md), it needs to be converted into specific formats to be deployed effectively in various environments, such as cloud, edge, or local devices.
|
||||
|
||||
With respect to YOLOv8, you can [export your model](../modes/export.md) to different formats. For example, when you need to transfer your model between different frameworks, ONNX is an excellent tool and [exporting to YOLOv8 to ONNX](../integrations/onnx.md) is easy. You can check out more options about integrating your model into different environments smoothly and effectively [here](../integrations/index.md).
|
||||
With respect to YOLO11, you can [export your model](../modes/export.md) to different formats. For example, when you need to transfer your model between different frameworks, ONNX is an excellent tool and [exporting to YOLO11 to ONNX](../integrations/onnx.md) is easy. You can check out more options about integrating your model into different environments smoothly and effectively [here](../integrations/index.md).
|
||||
|
||||
### Choosing a Deployment Environment
|
||||
|
||||
|
|
@ -94,7 +94,7 @@ Experiencing a drop in your model's accuracy after deployment can be frustrating
|
|||
- **Review Model Export and Conversion:** Re-export the model and make sure that the conversion process maintains the integrity of the model weights and architecture.
|
||||
- **Test with a Controlled Dataset:** Deploy the model in a test environment with a dataset you control and compare the results with the training phase. You can identify if the issue is with the deployment environment or the data.
|
||||
|
||||
When deploying YOLOv8, several factors can affect model accuracy. Converting models to formats like [TensorRT](../integrations/tensorrt.md) involves optimizations such as weight quantization and layer fusion, which can cause minor precision losses. Using FP16 (half-precision) instead of FP32 (full-precision) can speed up inference but may introduce numerical precision errors. Also, hardware constraints, like those on the [Jetson Nano](./nvidia-jetson.md), with lower CUDA core counts and reduced memory bandwidth, can impact performance.
|
||||
When deploying YOLO11, several factors can affect model accuracy. Converting models to formats like [TensorRT](../integrations/tensorrt.md) involves optimizations such as weight quantization and layer fusion, which can cause minor precision losses. Using FP16 (half-precision) instead of FP32 (full-precision) can speed up inference but may introduce numerical precision errors. Also, hardware constraints, like those on the [Jetson Nano](./nvidia-jetson.md), with lower CUDA core counts and reduced memory bandwidth, can impact performance.
|
||||
|
||||
### Inferences Are Taking Longer Than You Expected
|
||||
|
||||
|
|
@ -106,7 +106,7 @@ When deploying [machine learning](https://www.ultralytics.com/glossary/machine-l
|
|||
- **Profile the Inference Pipeline:** Identifying bottlenecks in the inference pipeline can help pinpoint the source of delays. Use profiling tools to analyze each step of the inference process, identifying and addressing any stages that cause significant delays, such as inefficient layers or data transfer issues.
|
||||
- **Use Appropriate Precision:** Using higher precision than necessary can slow down inference times. Experiment with using lower precision, such as FP16 (half-precision), instead of FP32 (full-precision). While FP16 can reduce inference time, also keep in mind that it can impact model accuracy.
|
||||
|
||||
If you are facing this issue while deploying YOLOv8, consider that YOLOv8 offers [various model sizes](../models/yolov8.md), such as YOLOv8n (nano) for devices with lower memory capacity and YOLOv8x (extra-large) for more powerful GPUs. Choosing the right model variant for your hardware can help balance memory usage and processing time.
|
||||
If you are facing this issue while deploying YOLO11, consider that YOLO11 offers [various model sizes](../models/yolov8.md), such as YOLO11n (nano) for devices with lower memory capacity and YOLOv8x (extra-large) for more powerful GPUs. Choosing the right model variant for your hardware can help balance memory usage and processing time.
|
||||
|
||||
Also keep in mind that the size of the input images directly impacts memory usage and processing time. Lower resolutions reduce memory usage and speed up inference, while higher resolutions improve accuracy but require more memory and processing power.
|
||||
|
||||
|
|
@ -132,12 +132,12 @@ Being part of a community of computer vision enthusiasts can help you solve prob
|
|||
|
||||
### Community Resources
|
||||
|
||||
- **GitHub Issues:** Explore the [YOLOv8 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **GitHub Issues:** Explore the [YOLO11 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to chat with other users and developers, get support, and share your experiences.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Visit the [official YOLOv8 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Visit the [official YOLO11 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
|
||||
Using these resources will help you solve challenges and stay up-to-date with the latest trends and practices in the computer vision community.
|
||||
|
||||
|
|
@ -149,22 +149,22 @@ After deploying your model, the next step would be monitoring, maintaining, and
|
|||
|
||||
## FAQ
|
||||
|
||||
### What are the best practices for deploying a machine learning model using Ultralytics YOLOv8?
|
||||
### What are the best practices for deploying a machine learning model using Ultralytics YOLO11?
|
||||
|
||||
Deploying a machine learning model, particularly with Ultralytics YOLOv8, involves several best practices to ensure efficiency and reliability. First, choose the deployment environment that suits your needs—cloud, edge, or local. Optimize your model through techniques like [pruning, quantization, and knowledge distillation](#model-optimization-techniques) for efficient deployment in resource-constrained environments. Lastly, ensure data consistency and preprocessing steps align with the training phase to maintain performance. You can also refer to [model deployment options](./model-deployment-options.md) for more detailed guidelines.
|
||||
Deploying a machine learning model, particularly with Ultralytics YOLO11, involves several best practices to ensure efficiency and reliability. First, choose the deployment environment that suits your needs—cloud, edge, or local. Optimize your model through techniques like [pruning, quantization, and knowledge distillation](#model-optimization-techniques) for efficient deployment in resource-constrained environments. Lastly, ensure data consistency and preprocessing steps align with the training phase to maintain performance. You can also refer to [model deployment options](./model-deployment-options.md) for more detailed guidelines.
|
||||
|
||||
### How can I troubleshoot common deployment issues with Ultralytics YOLOv8 models?
|
||||
### How can I troubleshoot common deployment issues with Ultralytics YOLO11 models?
|
||||
|
||||
Troubleshooting deployment issues can be broken down into a few key steps. If your model's accuracy drops after deployment, check for data consistency, validate preprocessing steps, and ensure the hardware/software environment matches what you used during training. For slow inference times, perform warm-up runs, optimize your inference engine, use asynchronous processing, and profile your inference pipeline. Refer to [troubleshooting deployment issues](#troubleshooting-deployment-issues) for a detailed guide on these best practices.
|
||||
|
||||
### How does Ultralytics YOLOv8 optimization enhance model performance on edge devices?
|
||||
### How does Ultralytics YOLO11 optimization enhance model performance on edge devices?
|
||||
|
||||
Optimizing Ultralytics YOLOv8 models for edge devices involves using techniques like pruning to reduce the model size, quantization to convert weights to lower precision, and knowledge distillation to train smaller models that mimic larger ones. These techniques ensure the model runs efficiently on devices with limited computational power. Tools like [TensorFlow Lite](../integrations/tflite.md) and [NVIDIA Jetson](./nvidia-jetson.md) are particularly useful for these optimizations. Learn more about these techniques in our section on [model optimization](#model-optimization-techniques).
|
||||
Optimizing Ultralytics YOLO11 models for edge devices involves using techniques like pruning to reduce the model size, quantization to convert weights to lower precision, and knowledge distillation to train smaller models that mimic larger ones. These techniques ensure the model runs efficiently on devices with limited computational power. Tools like [TensorFlow Lite](../integrations/tflite.md) and [NVIDIA Jetson](./nvidia-jetson.md) are particularly useful for these optimizations. Learn more about these techniques in our section on [model optimization](#model-optimization-techniques).
|
||||
|
||||
### What are the security considerations for deploying machine learning models with Ultralytics YOLOv8?
|
||||
### What are the security considerations for deploying machine learning models with Ultralytics YOLO11?
|
||||
|
||||
Security is paramount when deploying machine learning models. Ensure secure data transmission using encryption protocols like TLS. Implement robust access controls, including strong authentication and role-based access control (RBAC). Model obfuscation techniques, such as encrypting model parameters and serving models in a secure environment like a trusted execution environment (TEE), offer additional protection. For detailed practices, refer to [security considerations](#security-considerations-in-model-deployment).
|
||||
|
||||
### How do I choose the right deployment environment for my Ultralytics YOLOv8 model?
|
||||
### How do I choose the right deployment environment for my Ultralytics YOLO11 model?
|
||||
|
||||
Selecting the optimal deployment environment for your Ultralytics YOLOv8 model depends on your application's specific needs. Cloud deployment offers scalability and ease of access, making it ideal for applications with high data volumes. Edge deployment is best for low-latency applications requiring real-time responses, using tools like [TensorFlow Lite](../integrations/tflite.md). Local deployment suits scenarios needing stringent data privacy and control. For a comprehensive overview of each environment, check out our section on [choosing a deployment environment](#choosing-a-deployment-environment).
|
||||
Selecting the optimal deployment environment for your Ultralytics YOLO11 model depends on your application's specific needs. Cloud deployment offers scalability and ease of access, making it ideal for applications with high data volumes. Edge deployment is best for low-latency applications requiring real-time responses, using tools like [TensorFlow Lite](../integrations/tflite.md). Local deployment suits scenarios needing stringent data privacy and control. For a comprehensive overview of each environment, check out our section on [choosing a deployment environment](#choosing-a-deployment-environment).
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
comments: true
|
||||
description: Explore the most effective ways to assess and refine YOLOv8 models for better performance. Learn about evaluation metrics, fine-tuning processes, and how to customize your model for specific needs.
|
||||
description: Explore the most effective ways to assess and refine YOLO11 models for better performance. Learn about evaluation metrics, fine-tuning processes, and how to customize your model for specific needs.
|
||||
keywords: Model Evaluation, Machine Learning Model Evaluation, Fine Tuning Machine Learning, Fine Tune Model, Evaluating Models, Model Fine Tuning, How to Fine Tune a Model
|
||||
---
|
||||
|
||||
|
|
@ -45,23 +45,23 @@ Other mAP metrics include mAP@0.75, which uses a stricter IoU threshold of 0.75,
|
|||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/mean-average-precision-overview.avif" alt="Mean Average Precision Overview">
|
||||
</p>
|
||||
|
||||
## Evaluating YOLOv8 Model Performance
|
||||
## Evaluating YOLO11 Model Performance
|
||||
|
||||
With respect to YOLOv8, you can use the [validation mode](../modes/val.md) to evaluate the model. Also, be sure to take a look at our guide that goes in-depth into [YOLOv8 performance metrics](./yolo-performance-metrics.md) and how they can be interpreted.
|
||||
With respect to YOLO11, you can use the [validation mode](../modes/val.md) to evaluate the model. Also, be sure to take a look at our guide that goes in-depth into [YOLO11 performance metrics](./yolo-performance-metrics.md) and how they can be interpreted.
|
||||
|
||||
### Common Community Questions
|
||||
|
||||
When evaluating your YOLOv8 model, you might run into a few hiccups. Based on common community questions, here are some tips to help you get the most out of your YOLOv8 model:
|
||||
When evaluating your YOLO11 model, you might run into a few hiccups. Based on common community questions, here are some tips to help you get the most out of your YOLO11 model:
|
||||
|
||||
#### Handling Variable Image Sizes
|
||||
|
||||
Evaluating your YOLOv8 model with images of different sizes can help you understand its performance on diverse datasets. Using the `rect=true` validation parameter, YOLOv8 adjusts the network's stride for each batch based on the image sizes, allowing the model to handle rectangular images without forcing them to a single size.
|
||||
Evaluating your YOLO11 model with images of different sizes can help you understand its performance on diverse datasets. Using the `rect=true` validation parameter, YOLO11 adjusts the network's stride for each batch based on the image sizes, allowing the model to handle rectangular images without forcing them to a single size.
|
||||
|
||||
The `imgsz` validation parameter sets the maximum dimension for image resizing, which is 640 by default. You can adjust this based on your dataset's maximum dimensions and the GPU memory available. Even with `imgsz` set, `rect=true` lets the model manage varying image sizes effectively by dynamically adjusting the stride.
|
||||
|
||||
#### Accessing YOLOv8 Metrics
|
||||
#### Accessing YOLO11 Metrics
|
||||
|
||||
If you want to get a deeper understanding of your YOLOv8 model's performance, you can easily access specific evaluation metrics with a few lines of Python code. The code snippet below will let you load your model, run an evaluation, and print out various metrics that show how well your model is doing.
|
||||
If you want to get a deeper understanding of your YOLO11 model's performance, you can easily access specific evaluation metrics with a few lines of Python code. The code snippet below will let you load your model, run an evaluation, and print out various metrics that show how well your model is doing.
|
||||
|
||||
!!! example "Usage"
|
||||
|
||||
|
|
@ -71,7 +71,7 @@ If you want to get a deeper understanding of your YOLOv8 model's performance, yo
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load the model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Run the evaluation
|
||||
results = model.val(data="coco8.yaml")
|
||||
|
|
@ -101,7 +101,7 @@ If you want to get a deeper understanding of your YOLOv8 model's performance, yo
|
|||
print("Recall curve:", results.box.r_curve)
|
||||
```
|
||||
|
||||
The results object also includes speed metrics like preprocess time, inference time, loss, and postprocess time. By analyzing these metrics, you can fine-tune and optimize your YOLOv8 model for better performance, making it more effective for your specific use case.
|
||||
The results object also includes speed metrics like preprocess time, inference time, loss, and postprocess time. By analyzing these metrics, you can fine-tune and optimize your YOLO11 model for better performance, making it more effective for your specific use case.
|
||||
|
||||
## How Does Fine-Tuning Work?
|
||||
|
||||
|
|
@ -115,11 +115,11 @@ Fine-tuning a model means paying close attention to several vital parameters and
|
|||
|
||||
Usually, during the initial training [epochs](https://www.ultralytics.com/glossary/epoch), the learning rate starts low and gradually increases to stabilize the training process. However, since your model has already learned some features from the previous dataset, starting with a higher learning rate right away can be more beneficial.
|
||||
|
||||
When evaluating your YOLOv8 model, you can set the `warmup_epochs` validation parameter to `warmup_epochs=0` to prevent the learning rate from starting too high. By following this process, the training will continue from the provided weights, adjusting to the nuances of your new data.
|
||||
When evaluating your YOLO11 model, you can set the `warmup_epochs` validation parameter to `warmup_epochs=0` to prevent the learning rate from starting too high. By following this process, the training will continue from the provided weights, adjusting to the nuances of your new data.
|
||||
|
||||
### Image Tiling for Small Objects
|
||||
|
||||
Image tiling can improve detection accuracy for small objects. By dividing larger images into smaller segments, such as splitting 1280x1280 images into multiple 640x640 segments, you maintain the original resolution, and the model can learn from high-resolution fragments. When using YOLOv8, make sure to adjust your labels for these new segments correctly.
|
||||
Image tiling can improve detection accuracy for small objects. By dividing larger images into smaller segments, such as splitting 1280x1280 images into multiple 640x640 segments, you maintain the original resolution, and the model can learn from high-resolution fragments. When using YOLO11, make sure to adjust your labels for these new segments correctly.
|
||||
|
||||
## Engage with the Community
|
||||
|
||||
|
|
@ -127,12 +127,12 @@ Sharing your ideas and questions with other [computer vision](https://www.ultral
|
|||
|
||||
### Finding Help and Support
|
||||
|
||||
- **GitHub Issues:** Explore the YOLOv8 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to ask questions, report bugs, and suggest features. The community and maintainers are available to assist with any issues you encounter.
|
||||
- **GitHub Issues:** Explore the YOLO11 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to ask questions, report bugs, and suggest features. The community and maintainers are available to assist with any issues you encounter.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to connect with other users and developers, get support, share knowledge, and brainstorm ideas.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Check out the [official YOLOv8 documentation](./index.md) for comprehensive guides and valuable insights on various computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Check out the [official YOLO11 documentation](./index.md) for comprehensive guides and valuable insights on various computer vision tasks and projects.
|
||||
|
||||
## Final Thoughts
|
||||
|
||||
|
|
@ -140,30 +140,30 @@ Evaluating and fine-tuning your computer vision model are important steps for su
|
|||
|
||||
## FAQ
|
||||
|
||||
### What are the key metrics for evaluating YOLOv8 model performance?
|
||||
### What are the key metrics for evaluating YOLO11 model performance?
|
||||
|
||||
To evaluate YOLOv8 model performance, important metrics include Confidence Score, Intersection over Union (IoU), and Mean Average Precision (mAP). Confidence Score measures the model's certainty for each detected object class. IoU evaluates how well the predicted bounding box overlaps with the ground truth. Mean Average Precision (mAP) aggregates precision scores across classes, with mAP@.5 and mAP@.5:.95 being two common types for varying IoU thresholds. Learn more about these metrics in our [YOLOv8 performance metrics guide](./yolo-performance-metrics.md).
|
||||
To evaluate YOLO11 model performance, important metrics include Confidence Score, Intersection over Union (IoU), and Mean Average Precision (mAP). Confidence Score measures the model's certainty for each detected object class. IoU evaluates how well the predicted bounding box overlaps with the ground truth. Mean Average Precision (mAP) aggregates precision scores across classes, with mAP@.5 and mAP@.5:.95 being two common types for varying IoU thresholds. Learn more about these metrics in our [YOLO11 performance metrics guide](./yolo-performance-metrics.md).
|
||||
|
||||
### How can I fine-tune a pre-trained YOLOv8 model for my specific dataset?
|
||||
### How can I fine-tune a pre-trained YOLO11 model for my specific dataset?
|
||||
|
||||
Fine-tuning a pre-trained YOLOv8 model involves adjusting its parameters to improve performance on a specific task or dataset. Start by evaluating your model using metrics, then set a higher initial learning rate by adjusting the `warmup_epochs` parameter to 0 for immediate stability. Use parameters like `rect=true` for handling varied image sizes effectively. For more detailed guidance, refer to our section on [fine-tuning YOLOv8 models](#how-does-fine-tuning-work).
|
||||
Fine-tuning a pre-trained YOLO11 model involves adjusting its parameters to improve performance on a specific task or dataset. Start by evaluating your model using metrics, then set a higher initial learning rate by adjusting the `warmup_epochs` parameter to 0 for immediate stability. Use parameters like `rect=true` for handling varied image sizes effectively. For more detailed guidance, refer to our section on [fine-tuning YOLO11 models](#how-does-fine-tuning-work).
|
||||
|
||||
### How can I handle variable image sizes when evaluating my YOLOv8 model?
|
||||
### How can I handle variable image sizes when evaluating my YOLO11 model?
|
||||
|
||||
To handle variable image sizes during evaluation, use the `rect=true` parameter in YOLOv8, which adjusts the network's stride for each batch based on image sizes. The `imgsz` parameter sets the maximum dimension for image resizing, defaulting to 640. Adjust `imgsz` to suit your dataset and GPU memory. For more details, visit our [section on handling variable image sizes](#handling-variable-image-sizes).
|
||||
To handle variable image sizes during evaluation, use the `rect=true` parameter in YOLO11, which adjusts the network's stride for each batch based on image sizes. The `imgsz` parameter sets the maximum dimension for image resizing, defaulting to 640. Adjust `imgsz` to suit your dataset and GPU memory. For more details, visit our [section on handling variable image sizes](#handling-variable-image-sizes).
|
||||
|
||||
### What practical steps can I take to improve mean average precision for my YOLOv8 model?
|
||||
### What practical steps can I take to improve mean average precision for my YOLO11 model?
|
||||
|
||||
Improving mean average precision (mAP) for a YOLOv8 model involves several steps:
|
||||
Improving mean average precision (mAP) for a YOLO11 model involves several steps:
|
||||
|
||||
1. **Tuning Hyperparameters**: Experiment with different learning rates, [batch sizes](https://www.ultralytics.com/glossary/batch-size), and image augmentations.
|
||||
2. **[Data Augmentation](https://www.ultralytics.com/glossary/data-augmentation)**: Use techniques like Mosaic and MixUp to create diverse training samples.
|
||||
3. **Image Tiling**: Split larger images into smaller tiles to improve detection accuracy for small objects.
|
||||
Refer to our detailed guide on [model fine-tuning](#tips-for-fine-tuning-your-model) for specific strategies.
|
||||
|
||||
### How do I access YOLOv8 model evaluation metrics in Python?
|
||||
### How do I access YOLO11 model evaluation metrics in Python?
|
||||
|
||||
You can access YOLOv8 model evaluation metrics using Python with the following steps:
|
||||
You can access YOLO11 model evaluation metrics using Python with the following steps:
|
||||
|
||||
!!! example "Usage"
|
||||
|
||||
|
|
@ -173,7 +173,7 @@ You can access YOLOv8 model evaluation metrics using Python with the following s
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load the model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Run the evaluation
|
||||
results = model.val(data="coco8.yaml")
|
||||
|
|
@ -185,4 +185,4 @@ You can access YOLOv8 model evaluation metrics using Python with the following s
|
|||
print("Mean recall:", results.box.mr)
|
||||
```
|
||||
|
||||
Analyzing these metrics helps fine-tune and optimize your YOLOv8 model. For a deeper dive, check out our guide on [YOLOv8 metrics](../modes/val.md).
|
||||
Analyzing these metrics helps fine-tune and optimize your YOLO11 model. For a deeper dive, check out our guide on [YOLO11 metrics](../modes/val.md).
|
||||
|
|
|
|||
|
|
@ -123,12 +123,12 @@ Joining a community of computer vision enthusiasts can help you solve problems a
|
|||
|
||||
### Community Resources
|
||||
|
||||
- **GitHub Issues:** Check out the [YOLOv8 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are highly active and supportive.
|
||||
- **GitHub Issues:** Check out the [YOLO11 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are highly active and supportive.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to chat with other users and developers, get support, and share your experiences.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Visit the [official YOLOv8 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Visit the [official YOLO11 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
|
||||
Using these resources will help you solve challenges and stay up-to-date with the latest trends and practices in the computer vision community.
|
||||
|
||||
|
|
|
|||
|
|
@ -44,22 +44,22 @@ Next, the testing results can be analyzed:
|
|||
- **Error Analysis:** Perform a thorough error analysis to understand the types of errors (e.g., false positives vs. false negatives) and their potential causes.
|
||||
- **Bias and Fairness:** Check for any biases in the model's predictions. Ensure that the model performs equally well across different subsets of the data, especially if it includes sensitive attributes like race, gender, or age.
|
||||
|
||||
## Testing Your YOLOv8 Model
|
||||
## Testing Your YOLO11 Model
|
||||
|
||||
To test your YOLOv8 model, you can use the validation mode. It's a straightforward way to understand the model's strengths and areas that need improvement. Also, you'll need to format your test dataset correctly for YOLOv8. For more details on how to use the validation mode, check out the [Model Validation](../modes/val.md) docs page.
|
||||
To test your YOLO11 model, you can use the validation mode. It's a straightforward way to understand the model's strengths and areas that need improvement. Also, you'll need to format your test dataset correctly for YOLO11. For more details on how to use the validation mode, check out the [Model Validation](../modes/val.md) docs page.
|
||||
|
||||
## Using YOLOv8 to Predict on Multiple Test Images
|
||||
## Using YOLO11 to Predict on Multiple Test Images
|
||||
|
||||
If you want to test your trained YOLOv8 model on multiple images stored in a folder, you can easily do so in one go. Instead of using the validation mode, which is typically used to evaluate model performance on a validation set and provide detailed metrics, you might just want to see predictions on all images in your test set. For this, you can use the [prediction mode](../modes/predict.md).
|
||||
If you want to test your trained YOLO11 model on multiple images stored in a folder, you can easily do so in one go. Instead of using the validation mode, which is typically used to evaluate model performance on a validation set and provide detailed metrics, you might just want to see predictions on all images in your test set. For this, you can use the [prediction mode](../modes/predict.md).
|
||||
|
||||
### Difference Between Validation and Prediction Modes
|
||||
|
||||
- **[Validation Mode](../modes/val.md):** Used to evaluate the model's performance by comparing predictions against known labels (ground truth). It provides detailed metrics such as accuracy, precision, recall, and F1 score.
|
||||
- **[Prediction Mode](../modes/predict.md):** Used to run the model on new, unseen data to generate predictions. It does not provide detailed performance metrics but allows you to see how the model performs on real-world images.
|
||||
|
||||
## Running YOLOv8 Predictions Without Custom Training
|
||||
## Running YOLO11 Predictions Without Custom Training
|
||||
|
||||
If you are interested in testing the basic YOLOv8 model to understand whether it can be used for your application without custom training, you can use the prediction mode. While the model is pre-trained on datasets like COCO, running predictions on your own dataset can give you a quick sense of how well it might perform in your specific context.
|
||||
If you are interested in testing the basic YOLO11 model to understand whether it can be used for your application without custom training, you can use the prediction mode. While the model is pre-trained on datasets like COCO, running predictions on your own dataset can give you a quick sense of how well it might perform in your specific context.
|
||||
|
||||
## Overfitting and [Underfitting](https://www.ultralytics.com/glossary/underfitting) in [Machine Learning](https://www.ultralytics.com/glossary/machine-learning-ml)
|
||||
|
||||
|
|
@ -128,12 +128,12 @@ Becoming part of a community of computer vision enthusiasts can aid in solving p
|
|||
|
||||
### Community Resources
|
||||
|
||||
- **GitHub Issues:** Explore the [YOLOv8 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **GitHub Issues:** Explore the [YOLO11 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to chat with other users and developers, get support, and share your experiences.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Check out the [official YOLOv8 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Check out the [official YOLO11 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
|
||||
These resources will help you navigate challenges and remain updated on the latest trends and practices within the computer vision community.
|
||||
|
||||
|
|
@ -147,9 +147,9 @@ Building trustworthy computer vision models relies on rigorous model testing. By
|
|||
|
||||
Model evaluation and model testing are distinct steps in a computer vision project. Model evaluation involves using a labeled dataset to compute metrics such as [accuracy](https://www.ultralytics.com/glossary/accuracy), precision, recall, and [F1 score](https://www.ultralytics.com/glossary/f1-score), providing insights into the model's performance with a controlled dataset. Model testing, on the other hand, assesses the model's performance in real-world scenarios by applying it to new, unseen data, ensuring the model's learned behavior aligns with expectations outside the evaluation environment. For a detailed guide, refer to the [steps in a computer vision project](./steps-of-a-cv-project.md).
|
||||
|
||||
### How can I test my Ultralytics YOLOv8 model on multiple images?
|
||||
### How can I test my Ultralytics YOLO11 model on multiple images?
|
||||
|
||||
To test your Ultralytics YOLOv8 model on multiple images, you can use the [prediction mode](../modes/predict.md). This mode allows you to run the model on new, unseen data to generate predictions without providing detailed metrics. This is ideal for real-world performance testing on larger image sets stored in a folder. For evaluating performance metrics, use the [validation mode](../modes/val.md) instead.
|
||||
To test your Ultralytics YOLO11 model on multiple images, you can use the [prediction mode](../modes/predict.md). This mode allows you to run the model on new, unseen data to generate predictions without providing detailed metrics. This is ideal for real-world performance testing on larger image sets stored in a folder. For evaluating performance metrics, use the [validation mode](../modes/val.md) instead.
|
||||
|
||||
### What should I do if my computer vision model shows signs of overfitting or underfitting?
|
||||
|
||||
|
|
@ -195,6 +195,6 @@ Post-testing, if the model performance meets the project goals, proceed with dep
|
|||
|
||||
Gain insights from the [Model Testing Vs. Model Evaluation](#model-testing-vs-model-evaluation) section to refine and enhance model effectiveness in real-world applications.
|
||||
|
||||
### How do I run YOLOv8 predictions without custom training?
|
||||
### How do I run YOLO11 predictions without custom training?
|
||||
|
||||
You can run predictions using the pre-trained YOLOv8 model on your dataset to see if it suits your application needs. Utilize the [prediction mode](../modes/predict.md) to get a quick sense of performance results without diving into custom training.
|
||||
You can run predictions using the pre-trained YOLO11 model on your dataset to see if it suits your application needs. Utilize the [prediction mode](../modes/predict.md) to get a quick sense of performance results without diving into custom training.
|
||||
|
|
|
|||
|
|
@ -46,25 +46,25 @@ There are a few different aspects to think about when you are planning on using
|
|||
When training models on large datasets, efficiently utilizing your GPU is key. Batch size is an important factor. It is the number of data samples that a machine learning model processes in a single training iteration.
|
||||
Using the maximum batch size supported by your GPU, you can fully take advantage of its capabilities and reduce the time model training takes. However, you want to avoid running out of GPU memory. If you encounter memory errors, reduce the batch size incrementally until the model trains smoothly.
|
||||
|
||||
With respect to YOLOv8, you can set the `batch_size` parameter in the [training configuration](../modes/train.md) to match your GPU capacity. Also, setting `batch=-1` in your training script will automatically determine the [batch size](https://www.ultralytics.com/glossary/batch-size) that can be efficiently processed based on your device's capabilities. By fine-tuning the batch size, you can make the most of your GPU resources and improve the overall training process.
|
||||
With respect to YOLO11, you can set the `batch_size` parameter in the [training configuration](../modes/train.md) to match your GPU capacity. Also, setting `batch=-1` in your training script will automatically determine the [batch size](https://www.ultralytics.com/glossary/batch-size) that can be efficiently processed based on your device's capabilities. By fine-tuning the batch size, you can make the most of your GPU resources and improve the overall training process.
|
||||
|
||||
### Subset Training
|
||||
|
||||
Subset training is a smart strategy that involves training your model on a smaller set of data that represents the larger dataset. It can save time and resources, especially during initial model development and testing. If you are running short on time or experimenting with different model configurations, subset training is a good option.
|
||||
|
||||
When it comes to YOLOv8, you can easily implement subset training by using the `fraction` parameter. This parameter lets you specify what fraction of your dataset to use for training. For example, setting `fraction=0.1` will train your model on 10% of the data. You can use this technique for quick iterations and tuning your model before committing to training a model using a full dataset. Subset training helps you make rapid progress and identify potential issues early on.
|
||||
When it comes to YOLO11, you can easily implement subset training by using the `fraction` parameter. This parameter lets you specify what fraction of your dataset to use for training. For example, setting `fraction=0.1` will train your model on 10% of the data. You can use this technique for quick iterations and tuning your model before committing to training a model using a full dataset. Subset training helps you make rapid progress and identify potential issues early on.
|
||||
|
||||
### Multi-scale Training
|
||||
|
||||
Multiscale training is a technique that improves your model's ability to generalize by training it on images of varying sizes. Your model can learn to detect objects at different scales and distances and become more robust.
|
||||
|
||||
For example, when you train YOLOv8, you can enable multiscale training by setting the `scale` parameter. This parameter adjusts the size of training images by a specified factor, simulating objects at different distances. For example, setting `scale=0.5` will reduce the image size by half, while `scale=2.0` will double it. Configuring this parameter allows your model to experience a variety of image scales and improve its detection capabilities across different object sizes and scenarios.
|
||||
For example, when you train YOLO11, you can enable multiscale training by setting the `scale` parameter. This parameter adjusts the size of training images by a specified factor, simulating objects at different distances. For example, setting `scale=0.5` will reduce the image size by half, while `scale=2.0` will double it. Configuring this parameter allows your model to experience a variety of image scales and improve its detection capabilities across different object sizes and scenarios.
|
||||
|
||||
### Caching
|
||||
|
||||
Caching is an important technique to improve the efficiency of training machine learning models. By storing preprocessed images in memory, caching reduces the time the GPU spends waiting for data to be loaded from the disk. The model can continuously receive data without delays caused by disk I/O operations.
|
||||
|
||||
Caching can be controlled when training YOLOv8 using the `cache` parameter:
|
||||
Caching can be controlled when training YOLO11 using the `cache` parameter:
|
||||
|
||||
- _`cache=True`_: Stores dataset images in RAM, providing the fastest access speed but at the cost of increased memory usage.
|
||||
- _`cache='disk'`_: Stores the images on disk, slower than RAM but faster than loading fresh data each time.
|
||||
|
|
@ -80,19 +80,19 @@ Mixed precision training uses both 16-bit (FP16) and 32-bit (FP32) floating-poin
|
|||
|
||||
To implement mixed precision training, you'll need to modify your training scripts and ensure your hardware (like GPUs) supports it. Many modern [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) frameworks, such as [Tensorflow](https://www.ultralytics.com/glossary/tensorflow), offer built-in support for mixed precision.
|
||||
|
||||
Mixed precision training is straightforward when working with YOLOv8. You can use the `amp` flag in your training configuration. Setting `amp=True` enables Automatic Mixed Precision (AMP) training. Mixed precision training is a simple yet effective way to optimize your model training process.
|
||||
Mixed precision training is straightforward when working with YOLO11. You can use the `amp` flag in your training configuration. Setting `amp=True` enables Automatic Mixed Precision (AMP) training. Mixed precision training is a simple yet effective way to optimize your model training process.
|
||||
|
||||
### Pre-trained Weights
|
||||
|
||||
Using pretrained weights is a smart way to speed up your model's training process. Pretrained weights come from models already trained on large datasets, giving your model a head start. [Transfer learning](https://www.ultralytics.com/glossary/transfer-learning) adapts pretrained models to new, related tasks. Fine-tuning a pre-trained model involves starting with these weights and then continuing training on your specific dataset. This method of training results in faster training times and often better performance because the model starts with a solid understanding of basic features.
|
||||
|
||||
The `pretrained` parameter makes transfer learning easy with YOLOv8. Setting `pretrained=True` will use default pre-trained weights, or you can specify a path to a custom pre-trained model. Using pre-trained weights and transfer learning effectively boosts your model's capabilities and reduces training costs.
|
||||
The `pretrained` parameter makes transfer learning easy with YOLO11. Setting `pretrained=True` will use default pre-trained weights, or you can specify a path to a custom pre-trained model. Using pre-trained weights and transfer learning effectively boosts your model's capabilities and reduces training costs.
|
||||
|
||||
### Other Techniques to Consider When Handling a Large Dataset
|
||||
|
||||
There are a couple of other techniques to consider when handling a large dataset:
|
||||
|
||||
- **[Learning Rate](https://www.ultralytics.com/glossary/learning-rate) Schedulers**: Implementing learning rate schedulers dynamically adjusts the learning rate during training. A well-tuned learning rate can prevent the model from overshooting minima and improve stability. When training YOLOv8, the `lrf` parameter helps manage learning rate scheduling by setting the final learning rate as a fraction of the initial rate.
|
||||
- **[Learning Rate](https://www.ultralytics.com/glossary/learning-rate) Schedulers**: Implementing learning rate schedulers dynamically adjusts the learning rate during training. A well-tuned learning rate can prevent the model from overshooting minima and improve stability. When training YOLO11, the `lrf` parameter helps manage learning rate scheduling by setting the final learning rate as a fraction of the initial rate.
|
||||
- **Distributed Training**: For handling large datasets, distributed training can be a game-changer. You can reduce the training time by spreading the training workload across multiple GPUs or machines.
|
||||
|
||||
## The Number of Epochs To Train For
|
||||
|
|
@ -101,7 +101,7 @@ When training a model, an epoch refers to one complete pass through the entire t
|
|||
|
||||
A common question that comes up is how to determine the number of epochs to train the model for. A good starting point is 300 epochs. If the model overfits early, you can reduce the number of epochs. If [overfitting](https://www.ultralytics.com/glossary/overfitting) does not occur after 300 epochs, you can extend the training to 600, 1200, or more epochs.
|
||||
|
||||
However, the ideal number of epochs can vary based on your dataset's size and project goals. Larger datasets might require more epochs for the model to learn effectively, while smaller datasets might need fewer epochs to avoid overfitting. With respect to YOLOv8, you can set the `epochs` parameter in your training script.
|
||||
However, the ideal number of epochs can vary based on your dataset's size and project goals. Larger datasets might require more epochs for the model to learn effectively, while smaller datasets might need fewer epochs to avoid overfitting. With respect to YOLO11, you can set the `epochs` parameter in your training script.
|
||||
|
||||
## Early Stopping
|
||||
|
||||
|
|
@ -113,7 +113,7 @@ The process involves setting a patience parameter that determines how many [epoc
|
|||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/early-stopping-overview.avif" alt="Early Stopping Overview">
|
||||
</p>
|
||||
|
||||
For YOLOv8, you can enable early stopping by setting the patience parameter in your training configuration. For example, `patience=5` means training will stop if there's no improvement in validation metrics for 5 consecutive epochs. Using this method ensures the training process remains efficient and achieves optimal performance without excessive computation.
|
||||
For YOLO11, you can enable early stopping by setting the patience parameter in your training configuration. For example, `patience=5` means training will stop if there's no improvement in validation metrics for 5 consecutive epochs. Using this method ensures the training process remains efficient and achieves optimal performance without excessive computation.
|
||||
|
||||
## Choosing Between Cloud and Local Training
|
||||
|
||||
|
|
@ -143,13 +143,13 @@ Different optimizers have various strengths and weaknesses. Let's take a glimpse
|
|||
- Combines the benefits of both SGD with momentum and RMSProp.
|
||||
- Adjusts the learning rate for each parameter based on estimates of the first and second moments of the gradients.
|
||||
- Well-suited for noisy data and sparse gradients.
|
||||
- Efficient and generally requires less tuning, making it a recommended optimizer for YOLOv8.
|
||||
- Efficient and generally requires less tuning, making it a recommended optimizer for YOLO11.
|
||||
|
||||
- **RMSProp (Root Mean Square Propagation)**:
|
||||
- Adjusts the learning rate for each parameter by dividing the gradient by a running average of the magnitudes of recent gradients.
|
||||
- Helps in handling the vanishing gradient problem and is effective for [recurrent neural networks](https://www.ultralytics.com/glossary/recurrent-neural-network-rnn).
|
||||
|
||||
For YOLOv8, the `optimizer` parameter lets you choose from various optimizers, including SGD, Adam, AdamW, NAdam, RAdam, and RMSProp, or you can set it to `auto` for automatic selection based on model configuration.
|
||||
For YOLO11, the `optimizer` parameter lets you choose from various optimizers, including SGD, Adam, AdamW, NAdam, RAdam, and RMSProp, or you can set it to `auto` for automatic selection based on model configuration.
|
||||
|
||||
## Connecting with the Community
|
||||
|
||||
|
|
@ -157,12 +157,12 @@ Being part of a community of computer vision enthusiasts can help you solve prob
|
|||
|
||||
### Community Resources
|
||||
|
||||
- **GitHub Issues:** Visit the [YOLOv8 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **GitHub Issues:** Visit the [YOLO11 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to chat with other users and developers, get support, and share your experiences.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Check out the [official YOLOv8 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Check out the [official YOLO11 documentation](./index.md) for detailed guides and helpful tips on various computer vision projects.
|
||||
|
||||
Using these resources will help you solve challenges and stay up-to-date with the latest trends and practices in the computer vision community.
|
||||
|
||||
|
|
@ -174,20 +174,20 @@ Training computer vision models involves following good practices, optimizing yo
|
|||
|
||||
### How can I improve GPU utilization when training a large dataset with Ultralytics YOLO?
|
||||
|
||||
To improve GPU utilization, set the `batch_size` parameter in your training configuration to the maximum size supported by your GPU. This ensures that you make full use of the GPU's capabilities, reducing training time. If you encounter memory errors, incrementally reduce the batch size until training runs smoothly. For YOLOv8, setting `batch=-1` in your training script will automatically determine the optimal batch size for efficient processing. For further information, refer to the [training configuration](../modes/train.md).
|
||||
To improve GPU utilization, set the `batch_size` parameter in your training configuration to the maximum size supported by your GPU. This ensures that you make full use of the GPU's capabilities, reducing training time. If you encounter memory errors, incrementally reduce the batch size until training runs smoothly. For YOLO11, setting `batch=-1` in your training script will automatically determine the optimal batch size for efficient processing. For further information, refer to the [training configuration](../modes/train.md).
|
||||
|
||||
### What is mixed precision training, and how do I enable it in YOLOv8?
|
||||
### What is mixed precision training, and how do I enable it in YOLO11?
|
||||
|
||||
Mixed precision training utilizes both 16-bit (FP16) and 32-bit (FP32) floating-point types to balance computational speed and precision. This approach speeds up training and reduces memory usage without sacrificing model [accuracy](https://www.ultralytics.com/glossary/accuracy). To enable mixed precision training in YOLOv8, set the `amp` parameter to `True` in your training configuration. This activates Automatic Mixed Precision (AMP) training. For more details on this optimization technique, see the [training configuration](../modes/train.md).
|
||||
Mixed precision training utilizes both 16-bit (FP16) and 32-bit (FP32) floating-point types to balance computational speed and precision. This approach speeds up training and reduces memory usage without sacrificing model [accuracy](https://www.ultralytics.com/glossary/accuracy). To enable mixed precision training in YOLO11, set the `amp` parameter to `True` in your training configuration. This activates Automatic Mixed Precision (AMP) training. For more details on this optimization technique, see the [training configuration](../modes/train.md).
|
||||
|
||||
### How does multiscale training enhance YOLOv8 model performance?
|
||||
### How does multiscale training enhance YOLO11 model performance?
|
||||
|
||||
Multiscale training enhances model performance by training on images of varying sizes, allowing the model to better generalize across different scales and distances. In YOLOv8, you can enable multiscale training by setting the `scale` parameter in the training configuration. For example, `scale=0.5` reduces the image size by half, while `scale=2.0` doubles it. This technique simulates objects at different distances, making the model more robust across various scenarios. For settings and more details, check out the [training configuration](../modes/train.md).
|
||||
Multiscale training enhances model performance by training on images of varying sizes, allowing the model to better generalize across different scales and distances. In YOLO11, you can enable multiscale training by setting the `scale` parameter in the training configuration. For example, `scale=0.5` reduces the image size by half, while `scale=2.0` doubles it. This technique simulates objects at different distances, making the model more robust across various scenarios. For settings and more details, check out the [training configuration](../modes/train.md).
|
||||
|
||||
### How can I use pre-trained weights to speed up training in YOLOv8?
|
||||
### How can I use pre-trained weights to speed up training in YOLO11?
|
||||
|
||||
Using pre-trained weights can significantly reduce training times and improve model performance by starting from a model that already understands basic features. In YOLOv8, you can set the `pretrained` parameter to `True` or specify a path to custom pre-trained weights in your training configuration. This approach, known as transfer learning, leverages knowledge from large datasets to adapt to your specific task. Learn more about pre-trained weights and their advantages [here](../modes/train.md).
|
||||
Using pre-trained weights can significantly reduce training times and improve model performance by starting from a model that already understands basic features. In YOLO11, you can set the `pretrained` parameter to `True` or specify a path to custom pre-trained weights in your training configuration. This approach, known as transfer learning, leverages knowledge from large datasets to adapt to your specific task. Learn more about pre-trained weights and their advantages [here](../modes/train.md).
|
||||
|
||||
### What is the recommended number of epochs for training a model, and how do I set this in YOLOv8?
|
||||
### What is the recommended number of epochs for training a model, and how do I set this in YOLO11?
|
||||
|
||||
The number of epochs refers to the complete passes through the training dataset during model training. A typical starting point is 300 epochs. If your model overfits early, you can reduce the number. Alternatively, if overfitting isn't observed, you might extend training to 600, 1200, or more epochs. To set this in YOLOv8, use the `epochs` parameter in your training script. For additional advice on determining the ideal number of epochs, refer to this section on [number of epochs](#the-number-of-epochs-to-train-for).
|
||||
The number of epochs refers to the complete passes through the training dataset during model training. A typical starting point is 300 epochs. If your model overfits early, you can reduce the number. Alternatively, if overfitting isn't observed, you might extend training to 600, 1200, or more epochs. To set this in YOLO11, use the `epochs` parameter in your training script. For additional advice on determining the ideal number of epochs, refer to this section on [number of epochs](#the-number-of-epochs-to-train-for).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to use Ultralytics YOLOv8 for real-time object blurring to enhance privacy and focus in your images and videos.
|
||||
keywords: YOLOv8, object blurring, real-time processing, privacy protection, image manipulation, video editing, Ultralytics
|
||||
description: Learn how to use Ultralytics YOLO11 for real-time object blurring to enhance privacy and focus in your images and videos.
|
||||
keywords: YOLO11, object blurring, real-time processing, privacy protection, image manipulation, video editing, Ultralytics
|
||||
---
|
||||
|
||||
# Object Blurring using Ultralytics YOLOv8 🚀
|
||||
# Object Blurring using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is Object Blurring?
|
||||
|
||||
Object blurring with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves applying a blurring effect to specific detected objects in an image or video. This can be achieved using the YOLOv8 model capabilities to identify and manipulate objects within a given scene.
|
||||
Object blurring with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) involves applying a blurring effect to specific detected objects in an image or video. This can be achieved using the YOLO11 model capabilities to identify and manipulate objects within a given scene.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,16 +18,16 @@ Object blurring with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Object Blurring using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Object Blurring using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
## Advantages of Object Blurring?
|
||||
|
||||
- **Privacy Protection**: Object blurring is an effective tool for safeguarding privacy by concealing sensitive or personally identifiable information in images or videos.
|
||||
- **Selective Focus**: YOLOv8 allows for selective blurring, enabling users to target specific objects, ensuring a balance between privacy and retaining relevant visual information.
|
||||
- **Real-time Processing**: YOLOv8's efficiency enables object blurring in real-time, making it suitable for applications requiring on-the-fly privacy enhancements in dynamic environments.
|
||||
- **Selective Focus**: YOLO11 allows for selective blurring, enabling users to target specific objects, ensuring a balance between privacy and retaining relevant visual information.
|
||||
- **Real-time Processing**: YOLO11's efficiency enables object blurring in real-time, making it suitable for applications requiring on-the-fly privacy enhancements in dynamic environments.
|
||||
|
||||
!!! example "Object Blurring using YOLOv8 Example"
|
||||
!!! example "Object Blurring using YOLO11 Example"
|
||||
|
||||
=== "Object Blurring"
|
||||
|
||||
|
|
@ -37,7 +37,7 @@ Object blurring with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
|
@ -86,20 +86,20 @@ Object blurring with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
## FAQ
|
||||
|
||||
### What is object blurring with Ultralytics YOLOv8?
|
||||
### What is object blurring with Ultralytics YOLO11?
|
||||
|
||||
Object blurring with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves automatically detecting and applying a blurring effect to specific objects in images or videos. This technique enhances privacy by concealing sensitive information while retaining relevant visual data. YOLOv8's real-time processing capabilities make it suitable for applications requiring immediate privacy protection and selective focus adjustments.
|
||||
Object blurring with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) involves automatically detecting and applying a blurring effect to specific objects in images or videos. This technique enhances privacy by concealing sensitive information while retaining relevant visual data. YOLO11's real-time processing capabilities make it suitable for applications requiring immediate privacy protection and selective focus adjustments.
|
||||
|
||||
### How can I implement real-time object blurring using YOLOv8?
|
||||
### How can I implement real-time object blurring using YOLO11?
|
||||
|
||||
To implement real-time object blurring with YOLOv8, follow the provided Python example. This involves using YOLOv8 for [object detection](https://www.ultralytics.com/glossary/object-detection) and OpenCV for applying the blur effect. Here's a simplified version:
|
||||
To implement real-time object blurring with YOLO11, follow the provided Python example. This involves using YOLO11 for [object detection](https://www.ultralytics.com/glossary/object-detection) and OpenCV for applying the blur effect. Here's a simplified version:
|
||||
|
||||
```python
|
||||
import cv2
|
||||
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
||||
while cap.isOpened():
|
||||
|
|
@ -112,7 +112,7 @@ while cap.isOpened():
|
|||
obj = im0[int(box[1]) : int(box[3]), int(box[0]) : int(box[2])]
|
||||
im0[int(box[1]) : int(box[3]), int(box[0]) : int(box[2])] = cv2.blur(obj, (50, 50))
|
||||
|
||||
cv2.imshow("YOLOv8 Blurring", im0)
|
||||
cv2.imshow("YOLO11 Blurring", im0)
|
||||
if cv2.waitKey(1) & 0xFF == ord("q"):
|
||||
break
|
||||
|
||||
|
|
@ -120,9 +120,9 @@ cap.release()
|
|||
cv2.destroyAllWindows()
|
||||
```
|
||||
|
||||
### What are the benefits of using Ultralytics YOLOv8 for object blurring?
|
||||
### What are the benefits of using Ultralytics YOLO11 for object blurring?
|
||||
|
||||
Ultralytics YOLOv8 offers several advantages for object blurring:
|
||||
Ultralytics YOLO11 offers several advantages for object blurring:
|
||||
|
||||
- **Privacy Protection**: Effectively obscure sensitive or identifiable information.
|
||||
- **Selective Focus**: Target specific objects for blurring, maintaining essential visual content.
|
||||
|
|
@ -130,10 +130,10 @@ Ultralytics YOLOv8 offers several advantages for object blurring:
|
|||
|
||||
For more detailed applications, check the [advantages of object blurring section](#advantages-of-object-blurring).
|
||||
|
||||
### Can I use Ultralytics YOLOv8 to blur faces in a video for privacy reasons?
|
||||
### Can I use Ultralytics YOLO11 to blur faces in a video for privacy reasons?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can be configured to detect and blur faces in videos to protect privacy. By training or using a pre-trained model to specifically recognize faces, the detection results can be processed with [OpenCV](https://www.ultralytics.com/glossary/opencv) to apply a blur effect. Refer to our guide on [object detection with YOLOv8](https://docs.ultralytics.com/models/yolov8/) and modify the code to target face detection.
|
||||
Yes, Ultralytics YOLO11 can be configured to detect and blur faces in videos to protect privacy. By training or using a pre-trained model to specifically recognize faces, the detection results can be processed with [OpenCV](https://www.ultralytics.com/glossary/opencv) to apply a blur effect. Refer to our guide on [object detection with YOLO11](https://docs.ultralytics.com/models/yolov8/) and modify the code to target face detection.
|
||||
|
||||
### How does YOLOv8 compare to other object detection models like Faster R-CNN for object blurring?
|
||||
### How does YOLO11 compare to other object detection models like Faster R-CNN for object blurring?
|
||||
|
||||
Ultralytics YOLOv8 typically outperforms models like Faster R-CNN in terms of speed, making it more suitable for real-time applications. While both models offer accurate detection, YOLOv8's architecture is optimized for rapid inference, which is critical for tasks like real-time object blurring. Learn more about the technical differences and performance metrics in our [YOLOv8 documentation](https://docs.ultralytics.com/models/yolov8/).
|
||||
Ultralytics YOLO11 typically outperforms models like Faster R-CNN in terms of speed, making it more suitable for real-time applications. While both models offer accurate detection, YOLO11's architecture is optimized for rapid inference, which is critical for tasks like real-time object blurring. Learn more about the technical differences and performance metrics in our [YOLO11 documentation](https://docs.ultralytics.com/models/yolov8/).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn to accurately identify and count objects in real-time using Ultralytics YOLOv8 for applications like crowd analysis and surveillance.
|
||||
keywords: object counting, YOLOv8, Ultralytics, real-time object detection, AI, deep learning, object tracking, crowd analysis, surveillance, resource optimization
|
||||
description: Learn to accurately identify and count objects in real-time using Ultralytics YOLO11 for applications like crowd analysis and surveillance.
|
||||
keywords: object counting, YOLO11, Ultralytics, real-time object detection, AI, deep learning, object tracking, crowd analysis, surveillance, resource optimization
|
||||
---
|
||||
|
||||
# Object Counting using Ultralytics YOLOv8
|
||||
# Object Counting using Ultralytics YOLO11
|
||||
|
||||
## What is Object Counting?
|
||||
|
||||
Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves accurate identification and counting of specific objects in videos and camera streams. YOLOv8 excels in real-time applications, providing efficient and precise object counting for various scenarios like crowd analysis and surveillance, thanks to its state-of-the-art algorithms and [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) capabilities.
|
||||
Object counting with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) involves accurate identification and counting of specific objects in videos and camera streams. YOLO11 excels in real-time applications, providing efficient and precise object counting for various scenarios like crowd analysis and surveillance, thanks to its state-of-the-art algorithms and [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) capabilities.
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
|
|
@ -19,7 +19,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Object Counting using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Object Counting using Ultralytics YOLO11
|
||||
</td>
|
||||
<td align="center">
|
||||
<iframe loading="lazy" width="720" height="405" src="https://www.youtube.com/embed/Fj9TStNBVoY"
|
||||
|
|
@ -28,7 +28,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Class-wise Object Counting using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Class-wise Object Counting using Ultralytics YOLO11
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
|
@ -43,10 +43,10 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
| Logistics | Aquaculture |
|
||||
| :-----------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Conveyor Belt Packets Counting Using Ultralytics YOLOv8 | Fish Counting in Sea using Ultralytics YOLOv8 |
|
||||
|  |  |
|
||||
| Conveyor Belt Packets Counting Using Ultralytics YOLO11 | Fish Counting in Sea using Ultralytics YOLO11 |
|
||||
|
||||
!!! example "Object Counting using YOLOv8 Example"
|
||||
!!! example "Object Counting using YOLO11 Example"
|
||||
|
||||
=== "Count in Region"
|
||||
|
||||
|
|
@ -55,7 +55,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -97,7 +97,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n-obb.pt")
|
||||
model = YOLO("yolo11n-obb.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -137,7 +137,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -178,7 +178,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -219,7 +219,7 @@ Object counting with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -277,12 +277,12 @@ Here's a table with the `ObjectCounter` arguments:
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I count objects in a video using Ultralytics YOLOv8?
|
||||
### How do I count objects in a video using Ultralytics YOLO11?
|
||||
|
||||
To count objects in a video using Ultralytics YOLOv8, you can follow these steps:
|
||||
To count objects in a video using Ultralytics YOLO11, you can follow these steps:
|
||||
|
||||
1. Import the necessary libraries (`cv2`, `ultralytics`).
|
||||
2. Load a pretrained YOLOv8 model.
|
||||
2. Load a pretrained YOLO11 model.
|
||||
3. Define the counting region (e.g., a polygon, line, etc.).
|
||||
4. Set up the video capture and initialize the object counter.
|
||||
5. Process each frame to track objects and count them within the defined region.
|
||||
|
|
@ -321,14 +321,14 @@ def count_objects_in_region(video_path, output_video_path, model_path):
|
|||
cv2.destroyAllWindows()
|
||||
|
||||
|
||||
count_objects_in_region("path/to/video.mp4", "output_video.avi", "yolov8n.pt")
|
||||
count_objects_in_region("path/to/video.mp4", "output_video.avi", "yolo11n.pt")
|
||||
```
|
||||
|
||||
Explore more configurations and options in the [Object Counting](#object-counting-using-ultralytics-yolov8) section.
|
||||
Explore more configurations and options in the [Object Counting](#object-counting-using-ultralytics-yolo11) section.
|
||||
|
||||
### What are the advantages of using Ultralytics YOLOv8 for object counting?
|
||||
### What are the advantages of using Ultralytics YOLO11 for object counting?
|
||||
|
||||
Using Ultralytics YOLOv8 for object counting offers several advantages:
|
||||
Using Ultralytics YOLO11 for object counting offers several advantages:
|
||||
|
||||
1. **Resource Optimization:** It facilitates efficient resource management by providing accurate counts, helping optimize resource allocation in industries like inventory management.
|
||||
2. **Enhanced Security:** It enhances security and surveillance by accurately tracking and counting entities, aiding in proactive threat detection.
|
||||
|
|
@ -336,9 +336,9 @@ Using Ultralytics YOLOv8 for object counting offers several advantages:
|
|||
|
||||
For real-world applications and code examples, visit the [Advantages of Object Counting](#advantages-of-object-counting) section.
|
||||
|
||||
### How can I count specific classes of objects using Ultralytics YOLOv8?
|
||||
### How can I count specific classes of objects using Ultralytics YOLO11?
|
||||
|
||||
To count specific classes of objects using Ultralytics YOLOv8, you need to specify the classes you are interested in during the tracking phase. Below is a Python example:
|
||||
To count specific classes of objects using Ultralytics YOLO11, you need to specify the classes you are interested in during the tracking phase. Below is a Python example:
|
||||
|
||||
```python
|
||||
import cv2
|
||||
|
|
@ -372,27 +372,27 @@ def count_specific_classes(video_path, output_video_path, model_path, classes_to
|
|||
cv2.destroyAllWindows()
|
||||
|
||||
|
||||
count_specific_classes("path/to/video.mp4", "output_specific_classes.avi", "yolov8n.pt", [0, 2])
|
||||
count_specific_classes("path/to/video.mp4", "output_specific_classes.avi", "yolo11n.pt", [0, 2])
|
||||
```
|
||||
|
||||
In this example, `classes_to_count=[0, 2]`, which means it counts objects of class `0` and `2` (e.g., person and car).
|
||||
|
||||
### Why should I use YOLOv8 over other [object detection](https://www.ultralytics.com/glossary/object-detection) models for real-time applications?
|
||||
### Why should I use YOLO11 over other [object detection](https://www.ultralytics.com/glossary/object-detection) models for real-time applications?
|
||||
|
||||
Ultralytics YOLOv8 provides several advantages over other object detection models like Faster R-CNN, SSD, and previous YOLO versions:
|
||||
Ultralytics YOLO11 provides several advantages over other object detection models like Faster R-CNN, SSD, and previous YOLO versions:
|
||||
|
||||
1. **Speed and Efficiency:** YOLOv8 offers real-time processing capabilities, making it ideal for applications requiring high-speed inference, such as surveillance and autonomous driving.
|
||||
1. **Speed and Efficiency:** YOLO11 offers real-time processing capabilities, making it ideal for applications requiring high-speed inference, such as surveillance and autonomous driving.
|
||||
2. **[Accuracy](https://www.ultralytics.com/glossary/accuracy):** It provides state-of-the-art accuracy for object detection and tracking tasks, reducing the number of false positives and improving overall system reliability.
|
||||
3. **Ease of Integration:** YOLOv8 offers seamless integration with various platforms and devices, including mobile and edge devices, which is crucial for modern AI applications.
|
||||
3. **Ease of Integration:** YOLO11 offers seamless integration with various platforms and devices, including mobile and edge devices, which is crucial for modern AI applications.
|
||||
4. **Flexibility:** Supports various tasks like object detection, segmentation, and tracking with configurable models to meet specific use-case requirements.
|
||||
|
||||
Check out Ultralytics [YOLOv8 Documentation](https://docs.ultralytics.com/models/yolov8/) for a deeper dive into its features and performance comparisons.
|
||||
Check out Ultralytics [YOLO11 Documentation](https://docs.ultralytics.com/models/yolo11/) for a deeper dive into its features and performance comparisons.
|
||||
|
||||
### Can I use YOLOv8 for advanced applications like crowd analysis and traffic management?
|
||||
### Can I use YOLO11 for advanced applications like crowd analysis and traffic management?
|
||||
|
||||
Yes, Ultralytics YOLOv8 is perfectly suited for advanced applications like crowd analysis and traffic management due to its real-time detection capabilities, scalability, and integration flexibility. Its advanced features allow for high-accuracy object tracking, counting, and classification in dynamic environments. Example use cases include:
|
||||
Yes, Ultralytics YOLO11 is perfectly suited for advanced applications like crowd analysis and traffic management due to its real-time detection capabilities, scalability, and integration flexibility. Its advanced features allow for high-accuracy object tracking, counting, and classification in dynamic environments. Example use cases include:
|
||||
|
||||
- **Crowd Analysis:** Monitor and manage large gatherings, ensuring safety and optimizing crowd flow.
|
||||
- **Traffic Management:** Track and count vehicles, analyze traffic patterns, and manage congestion in real-time.
|
||||
|
||||
For more information and implementation details, refer to the guide on [Real World Applications](#real-world-applications) of object counting with YOLOv8.
|
||||
For more information and implementation details, refer to the guide on [Real World Applications](#real-world-applications) of object counting with YOLO11.
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to crop and extract objects using Ultralytics YOLOv8 for focused analysis, reduced data volume, and enhanced precision.
|
||||
keywords: Ultralytics, YOLOv8, object cropping, object detection, image processing, video analysis, AI, machine learning
|
||||
description: Learn how to crop and extract objects using Ultralytics YOLO11 for focused analysis, reduced data volume, and enhanced precision.
|
||||
keywords: Ultralytics, YOLO11, object cropping, object detection, image processing, video analysis, AI, machine learning
|
||||
---
|
||||
|
||||
# Object Cropping using Ultralytics YOLOv8
|
||||
# Object Cropping using Ultralytics YOLO11
|
||||
|
||||
## What is Object Cropping?
|
||||
|
||||
Object cropping with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves isolating and extracting specific detected objects from an image or video. The YOLOv8 model capabilities are utilized to accurately identify and delineate objects, enabling precise cropping for further analysis or manipulation.
|
||||
Object cropping with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) involves isolating and extracting specific detected objects from an image or video. The YOLO11 model capabilities are utilized to accurately identify and delineate objects, enabling precise cropping for further analysis or manipulation.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,23 +18,23 @@ Object cropping with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Object Cropping using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Object Cropping using Ultralytics YOLO
|
||||
</p>
|
||||
|
||||
## Advantages of Object Cropping?
|
||||
|
||||
- **Focused Analysis**: YOLOv8 facilitates targeted object cropping, allowing for in-depth examination or processing of individual items within a scene.
|
||||
- **Focused Analysis**: YOLO11 facilitates targeted object cropping, allowing for in-depth examination or processing of individual items within a scene.
|
||||
- **Reduced Data Volume**: By extracting only relevant objects, object cropping helps in minimizing data size, making it efficient for storage, transmission, or subsequent computational tasks.
|
||||
- **Enhanced Precision**: YOLOv8's [object detection](https://www.ultralytics.com/glossary/object-detection) [accuracy](https://www.ultralytics.com/glossary/accuracy) ensures that the cropped objects maintain their spatial relationships, preserving the integrity of the visual information for detailed analysis.
|
||||
- **Enhanced Precision**: YOLO11's [object detection](https://www.ultralytics.com/glossary/object-detection) [accuracy](https://www.ultralytics.com/glossary/accuracy) ensures that the cropped objects maintain their spatial relationships, preserving the integrity of the visual information for detailed analysis.
|
||||
|
||||
## Visuals
|
||||
|
||||
| Airport Luggage |
|
||||
| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |
|
||||
| Suitcases Cropping at airport conveyor belt using Ultralytics YOLOv8 |
|
||||
|  |
|
||||
| Suitcases Cropping at airport conveyor belt using Ultralytics YOLO11 |
|
||||
|
||||
!!! example "Object Cropping using YOLOv8 Example"
|
||||
!!! example "Object Cropping using YOLO11 Example"
|
||||
|
||||
=== "Object Cropping"
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ Object cropping with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
|
@ -98,22 +98,22 @@ Object cropping with [Ultralytics YOLOv8](https://github.com/ultralytics/ultraly
|
|||
|
||||
## FAQ
|
||||
|
||||
### What is object cropping in Ultralytics YOLOv8 and how does it work?
|
||||
### What is object cropping in Ultralytics YOLO11 and how does it work?
|
||||
|
||||
Object cropping using [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics) involves isolating and extracting specific objects from an image or video based on YOLOv8's detection capabilities. This process allows for focused analysis, reduced data volume, and enhanced [precision](https://www.ultralytics.com/glossary/precision) by leveraging YOLOv8 to identify objects with high accuracy and crop them accordingly. For an in-depth tutorial, refer to the [object cropping example](#object-cropping-using-ultralytics-yolov8).
|
||||
Object cropping using [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics) involves isolating and extracting specific objects from an image or video based on YOLO11's detection capabilities. This process allows for focused analysis, reduced data volume, and enhanced [precision](https://www.ultralytics.com/glossary/precision) by leveraging YOLO11 to identify objects with high accuracy and crop them accordingly. For an in-depth tutorial, refer to the [object cropping example](#object-cropping-using-ultralytics-yolo11).
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for object cropping over other solutions?
|
||||
### Why should I use Ultralytics YOLO11 for object cropping over other solutions?
|
||||
|
||||
Ultralytics YOLOv8 stands out due to its precision, speed, and ease of use. It allows detailed and accurate object detection and cropping, essential for [focused analysis](#advantages-of-object-cropping) and applications needing high data integrity. Moreover, YOLOv8 integrates seamlessly with tools like OpenVINO and TensorRT for deployments requiring real-time capabilities and optimization on diverse hardware. Explore the benefits in the [guide on model export](../modes/export.md).
|
||||
Ultralytics YOLO11 stands out due to its precision, speed, and ease of use. It allows detailed and accurate object detection and cropping, essential for [focused analysis](#advantages-of-object-cropping) and applications needing high data integrity. Moreover, YOLO11 integrates seamlessly with tools like OpenVINO and TensorRT for deployments requiring real-time capabilities and optimization on diverse hardware. Explore the benefits in the [guide on model export](../modes/export.md).
|
||||
|
||||
### How can I reduce the data volume of my dataset using object cropping?
|
||||
|
||||
By using Ultralytics YOLOv8 to crop only relevant objects from your images or videos, you can significantly reduce the data size, making it more efficient for storage and processing. This process involves training the model to detect specific objects and then using the results to crop and save these portions only. For more information on exploiting Ultralytics YOLOv8's capabilities, visit our [quickstart guide](../quickstart.md).
|
||||
By using Ultralytics YOLO11 to crop only relevant objects from your images or videos, you can significantly reduce the data size, making it more efficient for storage and processing. This process involves training the model to detect specific objects and then using the results to crop and save these portions only. For more information on exploiting Ultralytics YOLO11's capabilities, visit our [quickstart guide](../quickstart.md).
|
||||
|
||||
### Can I use Ultralytics YOLOv8 for real-time video analysis and object cropping?
|
||||
### Can I use Ultralytics YOLO11 for real-time video analysis and object cropping?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can process real-time video feeds to detect and crop objects dynamically. The model's high-speed inference capabilities make it ideal for real-time applications such as surveillance, sports analysis, and automated inspection systems. Check out the [tracking and prediction modes](../modes/predict.md) to understand how to implement real-time processing.
|
||||
Yes, Ultralytics YOLO11 can process real-time video feeds to detect and crop objects dynamically. The model's high-speed inference capabilities make it ideal for real-time applications such as surveillance, sports analysis, and automated inspection systems. Check out the [tracking and prediction modes](../modes/predict.md) to understand how to implement real-time processing.
|
||||
|
||||
### What are the hardware requirements for efficiently running YOLOv8 for object cropping?
|
||||
### What are the hardware requirements for efficiently running YOLO11 for object cropping?
|
||||
|
||||
Ultralytics YOLOv8 is optimized for both CPU and GPU environments, but to achieve optimal performance, especially for real-time or high-volume inference, a dedicated GPU (e.g., NVIDIA Tesla, RTX series) is recommended. For deployment on lightweight devices, consider using CoreML for iOS or TFLite for Android. More details on supported devices and formats can be found in our [model deployment options](../guides/model-deployment-options.md).
|
||||
Ultralytics YOLO11 is optimized for both CPU and GPU environments, but to achieve optimal performance, especially for real-time or high-volume inference, a dedicated GPU (e.g., NVIDIA Tesla, RTX series) is recommended. For deployment on lightweight devices, consider using CoreML for iOS or TFLite for Android. More details on supported devices and formats can be found in our [model deployment options](../guides/model-deployment-options.md).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Optimize parking spaces and enhance safety with Ultralytics YOLOv8. Explore real-time vehicle detection and smart parking solutions.
|
||||
keywords: parking management, YOLOv8, Ultralytics, vehicle detection, real-time tracking, parking lot optimization, smart parking
|
||||
description: Optimize parking spaces and enhance safety with Ultralytics YOLO11. Explore real-time vehicle detection and smart parking solutions.
|
||||
keywords: parking management, YOLO11, Ultralytics, vehicle detection, real-time tracking, parking lot optimization, smart parking
|
||||
---
|
||||
|
||||
# Parking Management using Ultralytics YOLOv8 🚀
|
||||
# Parking Management using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is Parking Management System?
|
||||
|
||||
Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) ensures efficient and safe parking by organizing spaces and monitoring availability. YOLOv8 can improve parking lot management through real-time vehicle detection, and insights into parking occupancy.
|
||||
Parking management with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) ensures efficient and safe parking by organizing spaces and monitoring availability. YOLO11 can improve parking lot management through real-time vehicle detection, and insights into parking occupancy.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,21 +18,21 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> How to Implement Parking Management Using Ultralytics YOLOv8 🚀
|
||||
<strong>Watch:</strong> How to Implement Parking Management Using Ultralytics YOLO 🚀
|
||||
</p>
|
||||
|
||||
## Advantages of Parking Management System?
|
||||
|
||||
- **Efficiency**: Parking lot management optimizes the use of parking spaces and reduces congestion.
|
||||
- **Safety and Security**: Parking management using YOLOv8 improves the safety of both people and vehicles through surveillance and security measures.
|
||||
- **Reduced Emissions**: Parking management using YOLOv8 manages traffic flow to minimize idle time and emissions in parking lots.
|
||||
- **Safety and Security**: Parking management using YOLO11 improves the safety of both people and vehicles through surveillance and security measures.
|
||||
- **Reduced Emissions**: Parking management using YOLO11 manages traffic flow to minimize idle time and emissions in parking lots.
|
||||
|
||||
## Real World Applications
|
||||
|
||||
| Parking Management System | Parking Management System |
|
||||
| :----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Parking management Aerial View using Ultralytics YOLOv8 | Parking management Top View using Ultralytics YOLOv8 |
|
||||
|  |  |
|
||||
| Parking management Aerial View using Ultralytics YOLO11 | Parking management Top View using Ultralytics YOLO11 |
|
||||
|
||||
## Parking Management System Code Workflow
|
||||
|
||||
|
|
@ -49,7 +49,7 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
|
||||
Max Image Size of 1920 * 1080 supported
|
||||
|
||||
!!! example "Parking slots Annotator Ultralytics YOLOv8"
|
||||
!!! example "Parking slots Annotator Ultralytics YOLO11"
|
||||
|
||||
=== "Parking Annotator"
|
||||
|
||||
|
|
@ -61,11 +61,11 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
|
||||
- After defining the parking areas with polygons, click `save` to store a JSON file with the data in your working directory.
|
||||
|
||||

|
||||

|
||||
|
||||
### Python Code for Parking Management
|
||||
|
||||
!!! example "Parking management using YOLOv8 Example"
|
||||
!!! example "Parking management using YOLO11 Example"
|
||||
|
||||
=== "Parking Management"
|
||||
|
||||
|
|
@ -84,7 +84,7 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
|
||||
# Initialize parking management object
|
||||
parking_manager = solutions.ParkingManagement(
|
||||
model="yolov8n.pt", # path to model file
|
||||
model="yolo11n.pt", # path to model file
|
||||
json_file="bounding_boxes.json", # path to parking annotations file
|
||||
)
|
||||
|
||||
|
|
@ -104,7 +104,7 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
|
||||
| Name | Type | Default | Description |
|
||||
| ------------------------ | ------- | ------------- | -------------------------------------------------------------- |
|
||||
| `model` | `str` | `None` | Path to the YOLOv8 model. |
|
||||
| `model` | `str` | `None` | Path to the YOLO11 model. |
|
||||
| `json_file` | `str` | `None` | Path to the JSON file, that have all parking coordinates data. |
|
||||
| `occupied_region_color` | `tuple` | `(0, 0, 255)` | RGB color for occupied regions. |
|
||||
| `available_region_color` | `tuple` | `(0, 255, 0)` | RGB color for available regions. |
|
||||
|
|
@ -115,33 +115,33 @@ Parking management with [Ultralytics YOLOv8](https://github.com/ultralytics/ultr
|
|||
|
||||
## FAQ
|
||||
|
||||
### How does Ultralytics YOLOv8 enhance parking management systems?
|
||||
### How does Ultralytics YOLO11 enhance parking management systems?
|
||||
|
||||
Ultralytics YOLOv8 greatly enhances parking management systems by providing **real-time vehicle detection** and monitoring. This results in optimized usage of parking spaces, reduced congestion, and improved safety through continuous surveillance. The [Parking Management System](https://github.com/ultralytics/ultralytics) enables efficient traffic flow, minimizing idle times and emissions in parking lots, thereby contributing to environmental sustainability. For further details, refer to the [parking management code workflow](#python-code-for-parking-management).
|
||||
Ultralytics YOLO11 greatly enhances parking management systems by providing **real-time vehicle detection** and monitoring. This results in optimized usage of parking spaces, reduced congestion, and improved safety through continuous surveillance. The [Parking Management System](https://github.com/ultralytics/ultralytics) enables efficient traffic flow, minimizing idle times and emissions in parking lots, thereby contributing to environmental sustainability. For further details, refer to the [parking management code workflow](#python-code-for-parking-management).
|
||||
|
||||
### What are the benefits of using Ultralytics YOLOv8 for smart parking?
|
||||
### What are the benefits of using Ultralytics YOLO11 for smart parking?
|
||||
|
||||
Using Ultralytics YOLOv8 for smart parking yields numerous benefits:
|
||||
Using Ultralytics YOLO11 for smart parking yields numerous benefits:
|
||||
|
||||
- **Efficiency**: Optimizes the use of parking spaces and decreases congestion.
|
||||
- **Safety and Security**: Enhances surveillance and ensures the safety of vehicles and pedestrians.
|
||||
- **Environmental Impact**: Helps in reducing emissions by minimizing vehicle idle times. More details on the advantages can be seen [here](#advantages-of-parking-management-system).
|
||||
|
||||
### How can I define parking spaces using Ultralytics YOLOv8?
|
||||
### How can I define parking spaces using Ultralytics YOLO11?
|
||||
|
||||
Defining parking spaces is straightforward with Ultralytics YOLOv8:
|
||||
Defining parking spaces is straightforward with Ultralytics YOLO11:
|
||||
|
||||
1. Capture a frame from a video or camera stream.
|
||||
2. Use the provided code to launch a GUI for selecting an image and drawing polygons to define parking spaces.
|
||||
3. Save the labeled data in JSON format for further processing. For comprehensive instructions, check the [selection of points](#selection-of-points) section.
|
||||
|
||||
### Can I customize the YOLOv8 model for specific parking management needs?
|
||||
### Can I customize the YOLO11 model for specific parking management needs?
|
||||
|
||||
Yes, Ultralytics YOLOv8 allows customization for specific parking management needs. You can adjust parameters such as the **occupied and available region colors**, margins for text display, and much more. Utilizing the `ParkingManagement` class's [optional arguments](#optional-arguments-parkingmanagement), you can tailor the model to suit your particular requirements, ensuring maximum efficiency and effectiveness.
|
||||
Yes, Ultralytics YOLO11 allows customization for specific parking management needs. You can adjust parameters such as the **occupied and available region colors**, margins for text display, and much more. Utilizing the `ParkingManagement` class's [optional arguments](#optional-arguments-parkingmanagement), you can tailor the model to suit your particular requirements, ensuring maximum efficiency and effectiveness.
|
||||
|
||||
### What are some real-world applications of Ultralytics YOLOv8 in parking lot management?
|
||||
### What are some real-world applications of Ultralytics YOLO11 in parking lot management?
|
||||
|
||||
Ultralytics YOLOv8 is utilized in various real-world applications for parking lot management, including:
|
||||
Ultralytics YOLO11 is utilized in various real-world applications for parking lot management, including:
|
||||
|
||||
- **Parking Space Detection**: Accurately identifying available and occupied spaces.
|
||||
- **Surveillance**: Enhancing security through real-time monitoring.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn essential data preprocessing techniques for annotated computer vision data, including resizing, normalizing, augmenting, and splitting datasets for optimal model training.
|
||||
keywords: data preprocessing, computer vision, image resizing, normalization, data augmentation, training dataset, validation dataset, test dataset, YOLOv8
|
||||
keywords: data preprocessing, computer vision, image resizing, normalization, data augmentation, training dataset, validation dataset, test dataset, YOLO11
|
||||
---
|
||||
|
||||
# Data Preprocessing Techniques for Annotated [Computer Vision](https://www.ultralytics.com/glossary/computer-vision-cv) Data
|
||||
|
|
@ -36,7 +36,7 @@ To make resizing a simpler task, you can use the following tools:
|
|||
- **[OpenCV](https://www.ultralytics.com/glossary/opencv)**: A popular computer vision library with extensive functions for image processing.
|
||||
- **PIL (Pillow)**: A Python Imaging Library for opening, manipulating, and saving image files.
|
||||
|
||||
With respect to YOLOv8, the 'imgsz' parameter during [model training](../modes/train.md) allows for flexible input sizes. When set to a specific size, such as 640, the model will resize input images so their largest dimension is 640 pixels while maintaining the original aspect ratio.
|
||||
With respect to YOLO11, the 'imgsz' parameter during [model training](../modes/train.md) allows for flexible input sizes. When set to a specific size, such as 640, the model will resize input images so their largest dimension is 640 pixels while maintaining the original aspect ratio.
|
||||
|
||||
By evaluating your model's and dataset's specific needs, you can determine whether resizing is a necessary preprocessing step or if your model can efficiently handle images of varying sizes.
|
||||
|
||||
|
|
@ -47,7 +47,7 @@ Another preprocessing technique is normalization. Normalization scales the pixel
|
|||
- **Min-Max Scaling**: Scales pixel values to a range of 0 to 1.
|
||||
- **Z-Score Normalization**: Scales pixel values based on their mean and standard deviation.
|
||||
|
||||
With respect to YOLOv8, normalization is seamlessly handled as part of its preprocessing pipeline during model training. YOLOv8 automatically performs several preprocessing steps, including conversion to RGB, scaling pixel values to the range [0, 1], and normalization using predefined mean and standard deviation values.
|
||||
With respect to YOLO11, normalization is seamlessly handled as part of its preprocessing pipeline during model training. YOLO11 automatically performs several preprocessing steps, including conversion to RGB, scaling pixel values to the range [0, 1], and normalization using predefined mean and standard deviation values.
|
||||
|
||||
### Splitting the Dataset
|
||||
|
||||
|
|
@ -76,9 +76,9 @@ Common augmentation techniques include flipping, rotation, scaling, and color ad
|
|||
<img width="100%" src="https://github.com/ultralytics/docs/releases/download/0/overview-of-data-augmentations.avif" alt="Overview of Data Augmentations">
|
||||
</p>
|
||||
|
||||
With respect to YOLOv8, you can [augment your custom dataset](../modes/train.md) by modifying the dataset configuration file, a .yaml file. In this file, you can add an augmentation section with parameters that specify how you want to augment your data.
|
||||
With respect to YOLO11, you can [augment your custom dataset](../modes/train.md) by modifying the dataset configuration file, a .yaml file. In this file, you can add an augmentation section with parameters that specify how you want to augment your data.
|
||||
|
||||
The [Ultralytics YOLOv8 repository](https://github.com/ultralytics/ultralytics/tree/main) supports a wide range of data augmentations. You can apply various transformations such as:
|
||||
The [Ultralytics YOLO11 repository](https://github.com/ultralytics/ultralytics/tree/main) supports a wide range of data augmentations. You can apply various transformations such as:
|
||||
|
||||
- Random Crops
|
||||
- Flipping: Images can be flipped horizontally or vertically.
|
||||
|
|
@ -89,12 +89,12 @@ Also, you can adjust the intensity of these augmentation techniques through spec
|
|||
|
||||
## A Case Study of Preprocessing
|
||||
|
||||
Consider a project aimed at developing a model to detect and classify different types of vehicles in traffic images using YOLOv8. We've collected traffic images and annotated them with bounding boxes and labels.
|
||||
Consider a project aimed at developing a model to detect and classify different types of vehicles in traffic images using YOLO11. We've collected traffic images and annotated them with bounding boxes and labels.
|
||||
|
||||
Here's what each step of preprocessing would look like for this project:
|
||||
|
||||
- Resizing Images: Since YOLOv8 handles flexible input sizes and performs resizing automatically, manual resizing is not required. The model will adjust the image size according to the specified 'imgsz' parameter during training.
|
||||
- Normalizing Pixel Values: YOLOv8 automatically normalizes pixel values to a range of 0 to 1 during preprocessing, so it's not required.
|
||||
- Resizing Images: Since YOLO11 handles flexible input sizes and performs resizing automatically, manual resizing is not required. The model will adjust the image size according to the specified 'imgsz' parameter during training.
|
||||
- Normalizing Pixel Values: YOLO11 automatically normalizes pixel values to a range of 0 to 1 during preprocessing, so it's not required.
|
||||
- Splitting the Dataset: Divide the dataset into training (70%), validation (20%), and test (10%) sets using tools like scikit-learn.
|
||||
- [Data Augmentation](https://www.ultralytics.com/glossary/data-augmentation): Modify the dataset configuration file (.yaml) to include data augmentation techniques such as random crops, horizontal flips, and brightness adjustments.
|
||||
|
||||
|
|
@ -132,12 +132,12 @@ Having discussions about your project with other computer vision enthusiasts can
|
|||
|
||||
### Channels to Connect with the Community
|
||||
|
||||
- **GitHub Issues:** Visit the YOLOv8 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers are there to help with any issues you face.
|
||||
- **GitHub Issues:** Visit the YOLO11 GitHub repository and use the [Issues tab](https://github.com/ultralytics/ultralytics/issues) to raise questions, report bugs, and suggest features. The community and maintainers are there to help with any issues you face.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to connect with other users and developers, get support, share knowledge, and brainstorm ideas.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Refer to the [official YOLOv8 documentation](./index.md) for thorough guides and valuable insights on numerous computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Refer to the [official YOLO11 documentation](./index.md) for thorough guides and valuable insights on numerous computer vision tasks and projects.
|
||||
|
||||
## Your Dataset Is Ready!
|
||||
|
||||
|
|
@ -151,7 +151,7 @@ Data preprocessing is essential in computer vision projects because it ensures t
|
|||
|
||||
### How can I use Ultralytics YOLO for data augmentation?
|
||||
|
||||
For data augmentation with Ultralytics YOLOv8, you need to modify the dataset configuration file (.yaml). In this file, you can specify various augmentation techniques such as random crops, horizontal flips, and brightness adjustments. This can be effectively done using the training configurations [explained here](../modes/train.md). Data augmentation helps create a more robust dataset, reduce [overfitting](https://www.ultralytics.com/glossary/overfitting), and improve model generalization.
|
||||
For data augmentation with Ultralytics YOLO11, you need to modify the dataset configuration file (.yaml). In this file, you can specify various augmentation techniques such as random crops, horizontal flips, and brightness adjustments. This can be effectively done using the training configurations [explained here](../modes/train.md). Data augmentation helps create a more robust dataset, reduce [overfitting](https://www.ultralytics.com/glossary/overfitting), and improve model generalization.
|
||||
|
||||
### What are the best data normalization techniques for computer vision data?
|
||||
|
||||
|
|
@ -160,12 +160,12 @@ Normalization scales pixel values to a standard range for faster convergence and
|
|||
- **Min-Max Scaling**: Scales pixel values to a range of 0 to 1.
|
||||
- **Z-Score Normalization**: Scales pixel values based on their mean and standard deviation.
|
||||
|
||||
For YOLOv8, normalization is handled automatically, including conversion to RGB and pixel value scaling. Learn more about it in the [model training section](../modes/train.md).
|
||||
For YOLO11, normalization is handled automatically, including conversion to RGB and pixel value scaling. Learn more about it in the [model training section](../modes/train.md).
|
||||
|
||||
### How should I split my annotated dataset for training?
|
||||
|
||||
To split your dataset, a common practice is to divide it into 70% for training, 20% for validation, and 10% for testing. It is important to maintain the data distribution of classes across these splits and avoid data leakage by performing augmentation only on the training set. Use tools like scikit-learn or [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) for efficient dataset splitting. See the detailed guide on [dataset preparation](../guides/data-collection-and-annotation.md).
|
||||
|
||||
### Can I handle varying image sizes in YOLOv8 without manual resizing?
|
||||
### Can I handle varying image sizes in YOLO11 without manual resizing?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can handle varying image sizes through the 'imgsz' parameter during model training. This parameter ensures that images are resized so their largest dimension matches the specified size (e.g., 640 pixels), while maintaining the aspect ratio. For more flexible input handling and automatic adjustments, check the [model training section](../modes/train.md).
|
||||
Yes, Ultralytics YOLO11 can handle varying image sizes through the 'imgsz' parameter during model training. This parameter ensures that images are resized so their largest dimension matches the specified size (e.g., 640 pixels), while maintaining the aspect ratio. For more flexible input handling and automatic adjustments, check the [model training section](../modes/train.md).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to manage and optimize queues using Ultralytics YOLOv8 to reduce wait times and increase efficiency in various real-world applications.
|
||||
keywords: queue management, YOLOv8, Ultralytics, reduce wait times, efficiency, customer satisfaction, retail, airports, healthcare, banks
|
||||
description: Learn how to manage and optimize queues using Ultralytics YOLO11 to reduce wait times and increase efficiency in various real-world applications.
|
||||
keywords: queue management, YOLO11, Ultralytics, reduce wait times, efficiency, customer satisfaction, retail, airports, healthcare, banks
|
||||
---
|
||||
|
||||
# Queue Management using Ultralytics YOLOv8 🚀
|
||||
# Queue Management using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is Queue Management?
|
||||
|
||||
Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) involves organizing and controlling lines of people or vehicles to reduce wait times and enhance efficiency. It's about optimizing queues to improve customer satisfaction and system performance in various settings like retail, banks, airports, and healthcare facilities.
|
||||
Queue management using [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) involves organizing and controlling lines of people or vehicles to reduce wait times and enhance efficiency. It's about optimizing queues to improve customer satisfaction and system performance in various settings like retail, banks, airports, and healthcare facilities.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,7 +18,7 @@ Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultra
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> How to Implement Queue Management with Ultralytics YOLOv8 | Airport and Metro Station
|
||||
<strong>Watch:</strong> How to Implement Queue Management with Ultralytics YOLO11 | Airport and Metro Station
|
||||
</p>
|
||||
|
||||
## Advantages of Queue Management?
|
||||
|
|
@ -30,10 +30,10 @@ Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultra
|
|||
|
||||
| Logistics | Retail |
|
||||
| :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Queue management at airport ticket counter Using Ultralytics YOLOv8 | Queue monitoring in crowd Ultralytics YOLOv8 |
|
||||
|  |  |
|
||||
| Queue management at airport ticket counter Using Ultralytics YOLO11 | Queue monitoring in crowd Ultralytics YOLO11 |
|
||||
|
||||
!!! example "Queue Management using YOLOv8 Example"
|
||||
!!! example "Queue Management using YOLO11 Example"
|
||||
|
||||
=== "Queue Manager"
|
||||
|
||||
|
|
@ -42,7 +42,7 @@ Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultra
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -84,7 +84,7 @@ Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultra
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
|
|
@ -135,11 +135,11 @@ Queue management using [Ultralytics YOLOv8](https://github.com/ultralytics/ultra
|
|||
|
||||
## FAQ
|
||||
|
||||
### How can I use Ultralytics YOLOv8 for real-time queue management?
|
||||
### How can I use Ultralytics YOLO11 for real-time queue management?
|
||||
|
||||
To use Ultralytics YOLOv8 for real-time queue management, you can follow these steps:
|
||||
To use Ultralytics YOLO11 for real-time queue management, you can follow these steps:
|
||||
|
||||
1. Load the YOLOv8 model with `YOLO("yolov8n.pt")`.
|
||||
1. Load the YOLO11 model with `YOLO("yolo11n.pt")`.
|
||||
2. Capture the video feed using `cv2.VideoCapture`.
|
||||
3. Define the region of interest (ROI) for queue management.
|
||||
4. Process frames to detect objects and manage queues.
|
||||
|
|
@ -151,7 +151,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video.mp4")
|
||||
queue_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]
|
||||
|
||||
|
|
@ -176,9 +176,9 @@ cv2.destroyAllWindows()
|
|||
|
||||
Leveraging Ultralytics [HUB](https://docs.ultralytics.com/hub/) can streamline this process by providing a user-friendly platform for deploying and managing your queue management solution.
|
||||
|
||||
### What are the key advantages of using Ultralytics YOLOv8 for queue management?
|
||||
### What are the key advantages of using Ultralytics YOLO11 for queue management?
|
||||
|
||||
Using Ultralytics YOLOv8 for queue management offers several benefits:
|
||||
Using Ultralytics YOLO11 for queue management offers several benefits:
|
||||
|
||||
- **Plummeting Waiting Times:** Efficiently organizes queues, reducing customer wait times and boosting satisfaction.
|
||||
- **Enhancing Efficiency:** Analyzes queue data to optimize staff deployment and operations, thereby reducing costs.
|
||||
|
|
@ -187,20 +187,20 @@ Using Ultralytics YOLOv8 for queue management offers several benefits:
|
|||
|
||||
For more details, explore our [Queue Management](https://docs.ultralytics.com/reference/solutions/queue_management/) solutions.
|
||||
|
||||
### Why should I choose Ultralytics YOLOv8 over competitors like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) or Detectron2 for queue management?
|
||||
### Why should I choose Ultralytics YOLO11 over competitors like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) or Detectron2 for queue management?
|
||||
|
||||
Ultralytics YOLOv8 has several advantages over TensorFlow and Detectron2 for queue management:
|
||||
Ultralytics YOLO11 has several advantages over TensorFlow and Detectron2 for queue management:
|
||||
|
||||
- **Real-time Performance:** YOLOv8 is known for its real-time detection capabilities, offering faster processing speeds.
|
||||
- **Real-time Performance:** YOLO11 is known for its real-time detection capabilities, offering faster processing speeds.
|
||||
- **Ease of Use:** Ultralytics provides a user-friendly experience, from training to deployment, via [Ultralytics HUB](https://docs.ultralytics.com/hub/).
|
||||
- **Pretrained Models:** Access to a range of pretrained models, minimizing the time needed for setup.
|
||||
- **Community Support:** Extensive documentation and active community support make problem-solving easier.
|
||||
|
||||
Learn how to get started with [Ultralytics YOLO](https://docs.ultralytics.com/quickstart/).
|
||||
|
||||
### Can Ultralytics YOLOv8 handle multiple types of queues, such as in airports and retail?
|
||||
### Can Ultralytics YOLO11 handle multiple types of queues, such as in airports and retail?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can manage various types of queues, including those in airports and retail environments. By configuring the QueueManager with specific regions and settings, YOLOv8 can adapt to different queue layouts and densities.
|
||||
Yes, Ultralytics YOLO11 can manage various types of queues, including those in airports and retail environments. By configuring the QueueManager with specific regions and settings, YOLO11 can adapt to different queue layouts and densities.
|
||||
|
||||
Example for airports:
|
||||
|
||||
|
|
@ -215,9 +215,9 @@ queue_airport = solutions.QueueManager(
|
|||
|
||||
For more information on diverse applications, check out our [Real World Applications](#real-world-applications) section.
|
||||
|
||||
### What are some real-world applications of Ultralytics YOLOv8 in queue management?
|
||||
### What are some real-world applications of Ultralytics YOLO11 in queue management?
|
||||
|
||||
Ultralytics YOLOv8 is used in various real-world applications for queue management:
|
||||
Ultralytics YOLO11 is used in various real-world applications for queue management:
|
||||
|
||||
- **Retail:** Monitors checkout lines to reduce wait times and improve customer satisfaction.
|
||||
- **Airports:** Manages queues at ticket counters and security checkpoints for a smoother passenger experience.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to implement YOLOv8 with SAHI for sliced inference. Optimize memory usage and enhance detection accuracy for large-scale applications.
|
||||
keywords: YOLOv8, SAHI, Sliced Inference, Object Detection, Ultralytics, High-resolution Images, Computational Efficiency, Integration Guide
|
||||
description: Learn how to implement YOLO11 with SAHI for sliced inference. Optimize memory usage and enhance detection accuracy for large-scale applications.
|
||||
keywords: YOLO11, SAHI, Sliced Inference, Object Detection, Ultralytics, High-resolution Images, Computational Efficiency, Integration Guide
|
||||
---
|
||||
|
||||
# Ultralytics Docs: Using YOLOv8 with SAHI for Sliced Inference
|
||||
# Ultralytics Docs: Using YOLO11 with SAHI for Sliced Inference
|
||||
|
||||
Welcome to the Ultralytics documentation on how to use YOLOv8 with [SAHI](https://github.com/obss/sahi) (Slicing Aided Hyper Inference). This comprehensive guide aims to furnish you with all the essential knowledge you'll need to implement SAHI alongside YOLOv8. We'll deep-dive into what SAHI is, why sliced inference is critical for large-scale applications, and how to integrate these functionalities with YOLOv8 for enhanced [object detection](https://www.ultralytics.com/glossary/object-detection) performance.
|
||||
Welcome to the Ultralytics documentation on how to use YOLO11 with [SAHI](https://github.com/obss/sahi) (Slicing Aided Hyper Inference). This comprehensive guide aims to furnish you with all the essential knowledge you'll need to implement SAHI alongside YOLO11. We'll deep-dive into what SAHI is, why sliced inference is critical for large-scale applications, and how to integrate these functionalities with YOLO11 for enhanced [object detection](https://www.ultralytics.com/glossary/object-detection) performance.
|
||||
|
||||
<p align="center">
|
||||
<img width="1024" src="https://github.com/ultralytics/docs/releases/download/0/sahi-sliced-inference-overview.avif" alt="SAHI Sliced Inference Overview">
|
||||
|
|
@ -24,7 +24,7 @@ SAHI (Slicing Aided Hyper Inference) is an innovative library designed to optimi
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Inference with SAHI (Slicing Aided Hyper Inference) using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Inference with SAHI (Slicing Aided Hyper Inference) using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
### Key Features of SAHI
|
||||
|
|
@ -47,12 +47,12 @@ Sliced Inference refers to the practice of subdividing a large or high-resolutio
|
|||
|
||||
<table border="0">
|
||||
<tr>
|
||||
<th>YOLOv8 without SAHI</th>
|
||||
<th>YOLOv8 with SAHI</th>
|
||||
<th>YOLO11 without SAHI</th>
|
||||
<th>YOLO11 with SAHI</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://github.com/ultralytics/docs/releases/download/0/yolov8-without-sahi.avif" alt="YOLOv8 without SAHI" width="640"></td>
|
||||
<td><img src="https://github.com/ultralytics/docs/releases/download/0/yolov8-with-sahi.avif" alt="YOLOv8 with SAHI" width="640"></td>
|
||||
<td><img src="https://github.com/ultralytics/docs/releases/download/0/yolov8-without-sahi.avif" alt="YOLO11 without SAHI" width="640"></td>
|
||||
<td><img src="https://github.com/ultralytics/docs/releases/download/0/yolov8-with-sahi.avif" alt="YOLO11 with SAHI" width="640"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
|
@ -68,15 +68,15 @@ pip install -U ultralytics sahi
|
|||
|
||||
### Import Modules and Download Resources
|
||||
|
||||
Here's how to import the necessary modules and download a YOLOv8 model and some test images:
|
||||
Here's how to import the necessary modules and download a YOLO11 model and some test images:
|
||||
|
||||
```python
|
||||
from sahi.utils.file import download_from_url
|
||||
from sahi.utils.yolov8 import download_yolov8s_model
|
||||
|
||||
# Download YOLOv8 model
|
||||
yolov8_model_path = "models/yolov8s.pt"
|
||||
download_yolov8s_model(yolov8_model_path)
|
||||
# Download YOLO11 model
|
||||
model_path = "models/yolo11s.pt"
|
||||
download_yolov8s_model(model_path)
|
||||
|
||||
# Download test images
|
||||
download_from_url(
|
||||
|
|
@ -89,11 +89,11 @@ download_from_url(
|
|||
)
|
||||
```
|
||||
|
||||
## Standard Inference with YOLOv8
|
||||
## Standard Inference with YOLO11
|
||||
|
||||
### Instantiate the Model
|
||||
|
||||
You can instantiate a YOLOv8 model for object detection like this:
|
||||
You can instantiate a YOLO11 model for object detection like this:
|
||||
|
||||
```python
|
||||
from sahi import AutoDetectionModel
|
||||
|
|
@ -129,7 +129,7 @@ result.export_visuals(export_dir="demo_data/")
|
|||
Image("demo_data/prediction_visual.png")
|
||||
```
|
||||
|
||||
## Sliced Inference with YOLOv8
|
||||
## Sliced Inference with YOLO11
|
||||
|
||||
Perform sliced inference by specifying the slice dimensions and overlap ratios:
|
||||
|
||||
|
|
@ -170,7 +170,7 @@ from sahi.predict import predict
|
|||
|
||||
predict(
|
||||
model_type="yolov8",
|
||||
model_path="path/to/yolov8n.pt",
|
||||
model_path="path/to/yolo11n.pt",
|
||||
model_device="cpu", # or 'cuda:0'
|
||||
model_confidence_threshold=0.4,
|
||||
source="path/to/dir",
|
||||
|
|
@ -181,7 +181,7 @@ predict(
|
|||
)
|
||||
```
|
||||
|
||||
That's it! Now you're equipped to use YOLOv8 with SAHI for both standard and sliced inference.
|
||||
That's it! Now you're equipped to use YOLO11 with SAHI for both standard and sliced inference.
|
||||
|
||||
## Citations and Acknowledgments
|
||||
|
||||
|
|
@ -206,23 +206,23 @@ We extend our thanks to the SAHI research group for creating and maintaining thi
|
|||
|
||||
## FAQ
|
||||
|
||||
### How can I integrate YOLOv8 with SAHI for sliced inference in object detection?
|
||||
### How can I integrate YOLO11 with SAHI for sliced inference in object detection?
|
||||
|
||||
Integrating Ultralytics YOLOv8 with SAHI (Slicing Aided Hyper Inference) for sliced inference optimizes your object detection tasks on high-resolution images by partitioning them into manageable slices. This approach improves memory usage and ensures high detection accuracy. To get started, you need to install the ultralytics and sahi libraries:
|
||||
Integrating Ultralytics YOLO11 with SAHI (Slicing Aided Hyper Inference) for sliced inference optimizes your object detection tasks on high-resolution images by partitioning them into manageable slices. This approach improves memory usage and ensures high detection accuracy. To get started, you need to install the ultralytics and sahi libraries:
|
||||
|
||||
```bash
|
||||
pip install -U ultralytics sahi
|
||||
```
|
||||
|
||||
Then, download a YOLOv8 model and test images:
|
||||
Then, download a YOLO11 model and test images:
|
||||
|
||||
```python
|
||||
from sahi.utils.file import download_from_url
|
||||
from sahi.utils.yolov8 import download_yolov8s_model
|
||||
|
||||
# Download YOLOv8 model
|
||||
yolov8_model_path = "models/yolov8s.pt"
|
||||
download_yolov8s_model(yolov8_model_path)
|
||||
# Download YOLO11 model
|
||||
model_path = "models/yolo11s.pt"
|
||||
download_yolov8s_model(model_path)
|
||||
|
||||
# Download test images
|
||||
download_from_url(
|
||||
|
|
@ -231,11 +231,11 @@ download_from_url(
|
|||
)
|
||||
```
|
||||
|
||||
For more detailed instructions, refer to our [Sliced Inference guide](#sliced-inference-with-yolov8).
|
||||
For more detailed instructions, refer to our [Sliced Inference guide](#sliced-inference-with-yolo11).
|
||||
|
||||
### Why should I use SAHI with YOLOv8 for object detection on large images?
|
||||
### Why should I use SAHI with YOLO11 for object detection on large images?
|
||||
|
||||
Using SAHI with Ultralytics YOLOv8 for object detection on large images offers several benefits:
|
||||
Using SAHI with Ultralytics YOLO11 for object detection on large images offers several benefits:
|
||||
|
||||
- **Reduced Computational Burden**: Smaller slices are faster to process and consume less memory, making it feasible to run high-quality detections on hardware with limited resources.
|
||||
- **Maintained Detection Accuracy**: SAHI uses intelligent algorithms to merge overlapping boxes, preserving the detection quality.
|
||||
|
|
@ -243,9 +243,9 @@ Using SAHI with Ultralytics YOLOv8 for object detection on large images offers s
|
|||
|
||||
Learn more about the [benefits of sliced inference](#benefits-of-sliced-inference) in our documentation.
|
||||
|
||||
### Can I visualize prediction results when using YOLOv8 with SAHI?
|
||||
### Can I visualize prediction results when using YOLO11 with SAHI?
|
||||
|
||||
Yes, you can visualize prediction results when using YOLOv8 with SAHI. Here's how you can export and visualize the results:
|
||||
Yes, you can visualize prediction results when using YOLO11 with SAHI. Here's how you can export and visualize the results:
|
||||
|
||||
```python
|
||||
from IPython.display import Image
|
||||
|
|
@ -256,9 +256,9 @@ Image("demo_data/prediction_visual.png")
|
|||
|
||||
This command will save the visualized predictions to the specified directory and you can then load the image to view it in your notebook or application. For a detailed guide, check out the [Standard Inference section](#visualize-results).
|
||||
|
||||
### What features does SAHI offer for improving YOLOv8 object detection?
|
||||
### What features does SAHI offer for improving YOLO11 object detection?
|
||||
|
||||
SAHI (Slicing Aided Hyper Inference) offers several features that complement Ultralytics YOLOv8 for object detection:
|
||||
SAHI (Slicing Aided Hyper Inference) offers several features that complement Ultralytics YOLO11 for object detection:
|
||||
|
||||
- **Seamless Integration**: SAHI easily integrates with YOLO models, requiring minimal code adjustments.
|
||||
- **Resource Efficiency**: It partitions large images into smaller slices, which optimizes memory usage and speed.
|
||||
|
|
@ -266,9 +266,9 @@ SAHI (Slicing Aided Hyper Inference) offers several features that complement Ult
|
|||
|
||||
For a deeper understanding, read about SAHI's [key features](#key-features-of-sahi).
|
||||
|
||||
### How do I handle large-scale inference projects using YOLOv8 and SAHI?
|
||||
### How do I handle large-scale inference projects using YOLO11 and SAHI?
|
||||
|
||||
To handle large-scale inference projects using YOLOv8 and SAHI, follow these best practices:
|
||||
To handle large-scale inference projects using YOLO11 and SAHI, follow these best practices:
|
||||
|
||||
1. **Install Required Libraries**: Ensure that you have the latest versions of ultralytics and sahi.
|
||||
2. **Configure Sliced Inference**: Determine the optimal slice dimensions and overlap ratios for your specific project.
|
||||
|
|
@ -281,7 +281,7 @@ from sahi.predict import predict
|
|||
|
||||
predict(
|
||||
model_type="yolov8",
|
||||
model_path="path/to/yolov8n.pt",
|
||||
model_path="path/to/yolo11n.pt",
|
||||
model_device="cpu", # or 'cuda:0'
|
||||
model_confidence_threshold=0.4,
|
||||
source="path/to/dir",
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
---
|
||||
comments: true
|
||||
description: Enhance your security with real-time object detection using Ultralytics YOLOv8. Reduce false positives and integrate seamlessly with existing systems.
|
||||
keywords: YOLOv8, Security Alarm System, real-time object detection, Ultralytics, computer vision, integration, false positives
|
||||
description: Enhance your security with real-time object detection using Ultralytics YOLO11. Reduce false positives and integrate seamlessly with existing systems.
|
||||
keywords: YOLO11, Security Alarm System, real-time object detection, Ultralytics, computer vision, integration, false positives
|
||||
---
|
||||
|
||||
# Security Alarm System Project Using Ultralytics YOLOv8
|
||||
# Security Alarm System Project Using Ultralytics YOLO11
|
||||
|
||||
<img src="https://github.com/ultralytics/docs/releases/download/0/security-alarm-system-ultralytics-yolov8.avif" alt="Security Alarm System">
|
||||
|
||||
The Security Alarm System Project utilizing Ultralytics YOLOv8 integrates advanced [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) capabilities to enhance security measures. YOLOv8, developed by Ultralytics, provides real-time object detection, allowing the system to identify and respond to potential security threats promptly. This project offers several advantages:
|
||||
The Security Alarm System Project utilizing Ultralytics YOLO11 integrates advanced [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) capabilities to enhance security measures. YOLO11, developed by Ultralytics, provides real-time object detection, allowing the system to identify and respond to potential security threats promptly. This project offers several advantages:
|
||||
|
||||
- **Real-time Detection:** YOLOv8's efficiency enables the Security Alarm System to detect and respond to security incidents in real-time, minimizing response time.
|
||||
- **[Accuracy](https://www.ultralytics.com/glossary/accuracy):** YOLOv8 is known for its accuracy in object detection, reducing false positives and enhancing the reliability of the security alarm system.
|
||||
- **Real-time Detection:** YOLO11's efficiency enables the Security Alarm System to detect and respond to security incidents in real-time, minimizing response time.
|
||||
- **[Accuracy](https://www.ultralytics.com/glossary/accuracy):** YOLO11 is known for its accuracy in object detection, reducing false positives and enhancing the reliability of the security alarm system.
|
||||
- **Integration Capabilities:** The project can be seamlessly integrated with existing security infrastructure, providing an upgraded layer of intelligent surveillance.
|
||||
|
||||
<p align="center">
|
||||
|
|
@ -22,7 +22,7 @@ The Security Alarm System Project utilizing Ultralytics YOLOv8 integrates advanc
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Security Alarm System Project with Ultralytics YOLOv8 <a href="https://www.ultralytics.com/glossary/object-detection">Object Detection</a>
|
||||
<strong>Watch:</strong> Security Alarm System Project with Ultralytics YOLO11 <a href="https://www.ultralytics.com/glossary/object-detection">Object Detection</a>
|
||||
</p>
|
||||
|
||||
### Code
|
||||
|
|
@ -90,7 +90,7 @@ class ObjectDetection:
|
|||
self.email_sent = False
|
||||
|
||||
# model information
|
||||
self.model = YOLO("yolov8n.pt")
|
||||
self.model = YOLO("yolo11n.pt")
|
||||
|
||||
# visual information
|
||||
self.annotator = None
|
||||
|
|
@ -155,7 +155,7 @@ class ObjectDetection:
|
|||
self.email_sent = False
|
||||
|
||||
self.display_fps(im0)
|
||||
cv2.imshow("YOLOv8 Detection", im0)
|
||||
cv2.imshow("YOLO11 Detection", im0)
|
||||
frame_count += 1
|
||||
if cv2.waitKey(5) & 0xFF == 27:
|
||||
break
|
||||
|
|
@ -179,22 +179,22 @@ That's it! When you execute the code, you'll receive a single notification on yo
|
|||
|
||||
## FAQ
|
||||
|
||||
### How does Ultralytics YOLOv8 improve the accuracy of a security alarm system?
|
||||
### How does Ultralytics YOLO11 improve the accuracy of a security alarm system?
|
||||
|
||||
Ultralytics YOLOv8 enhances security alarm systems by delivering high-accuracy, real-time object detection. Its advanced algorithms significantly reduce false positives, ensuring that the system only responds to genuine threats. This increased reliability can be seamlessly integrated with existing security infrastructure, upgrading the overall surveillance quality.
|
||||
Ultralytics YOLO11 enhances security alarm systems by delivering high-accuracy, real-time object detection. Its advanced algorithms significantly reduce false positives, ensuring that the system only responds to genuine threats. This increased reliability can be seamlessly integrated with existing security infrastructure, upgrading the overall surveillance quality.
|
||||
|
||||
### Can I integrate Ultralytics YOLOv8 with my existing security infrastructure?
|
||||
### Can I integrate Ultralytics YOLO11 with my existing security infrastructure?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can be seamlessly integrated with your existing security infrastructure. The system supports various modes and provides flexibility for customization, allowing you to enhance your existing setup with advanced object detection capabilities. For detailed instructions on integrating YOLOv8 in your projects, visit the [integration section](https://docs.ultralytics.com/integrations/).
|
||||
Yes, Ultralytics YOLO11 can be seamlessly integrated with your existing security infrastructure. The system supports various modes and provides flexibility for customization, allowing you to enhance your existing setup with advanced object detection capabilities. For detailed instructions on integrating YOLO11 in your projects, visit the [integration section](https://docs.ultralytics.com/integrations/).
|
||||
|
||||
### What are the storage requirements for running Ultralytics YOLOv8?
|
||||
### What are the storage requirements for running Ultralytics YOLO11?
|
||||
|
||||
Running Ultralytics YOLOv8 on a standard setup typically requires around 5GB of free disk space. This includes space for storing the YOLOv8 model and any additional dependencies. For cloud-based solutions, Ultralytics HUB offers efficient project management and dataset handling, which can optimize storage needs. Learn more about the [Pro Plan](../hub/pro.md) for enhanced features including extended storage.
|
||||
Running Ultralytics YOLO11 on a standard setup typically requires around 5GB of free disk space. This includes space for storing the YOLO11 model and any additional dependencies. For cloud-based solutions, Ultralytics HUB offers efficient project management and dataset handling, which can optimize storage needs. Learn more about the [Pro Plan](../hub/pro.md) for enhanced features including extended storage.
|
||||
|
||||
### What makes Ultralytics YOLOv8 different from other object detection models like Faster R-CNN or SSD?
|
||||
### What makes Ultralytics YOLO11 different from other object detection models like Faster R-CNN or SSD?
|
||||
|
||||
Ultralytics YOLOv8 provides an edge over models like Faster R-CNN or SSD with its real-time detection capabilities and higher accuracy. Its unique architecture allows it to process images much faster without compromising on [precision](https://www.ultralytics.com/glossary/precision), making it ideal for time-sensitive applications like security alarm systems. For a comprehensive comparison of object detection models, you can explore our [guide](https://docs.ultralytics.com/models/).
|
||||
Ultralytics YOLO11 provides an edge over models like Faster R-CNN or SSD with its real-time detection capabilities and higher accuracy. Its unique architecture allows it to process images much faster without compromising on [precision](https://www.ultralytics.com/glossary/precision), making it ideal for time-sensitive applications like security alarm systems. For a comprehensive comparison of object detection models, you can explore our [guide](https://docs.ultralytics.com/models/).
|
||||
|
||||
### How can I reduce the frequency of false positives in my security system using Ultralytics YOLOv8?
|
||||
### How can I reduce the frequency of false positives in my security system using Ultralytics YOLO11?
|
||||
|
||||
To reduce false positives, ensure your Ultralytics YOLOv8 model is adequately trained with a diverse and well-annotated dataset. Fine-tuning hyperparameters and regularly updating the model with new data can significantly improve detection accuracy. Detailed [hyperparameter tuning](https://www.ultralytics.com/glossary/hyperparameter-tuning) techniques can be found in our [hyperparameter tuning guide](../guides/hyperparameter-tuning.md).
|
||||
To reduce false positives, ensure your Ultralytics YOLO11 model is adequately trained with a diverse and well-annotated dataset. Fine-tuning hyperparameters and regularly updating the model with new data can significantly improve detection accuracy. Detailed [hyperparameter tuning](https://www.ultralytics.com/glossary/hyperparameter-tuning) techniques can be found in our [hyperparameter tuning guide](../guides/hyperparameter-tuning.md).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to estimate object speed using Ultralytics YOLOv8 for applications in traffic control, autonomous navigation, and surveillance.
|
||||
keywords: Ultralytics YOLOv8, speed estimation, object tracking, computer vision, traffic control, autonomous navigation, surveillance, security
|
||||
description: Learn how to estimate object speed using Ultralytics YOLO11 for applications in traffic control, autonomous navigation, and surveillance.
|
||||
keywords: Ultralytics YOLO11, speed estimation, object tracking, computer vision, traffic control, autonomous navigation, surveillance, security
|
||||
---
|
||||
|
||||
# Speed Estimation using Ultralytics YOLOv8 🚀
|
||||
# Speed Estimation using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is Speed Estimation?
|
||||
|
||||
[Speed estimation](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects) is the process of calculating the rate of movement of an object within a given context, often employed in [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) applications. Using [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) you can now calculate the speed of object using [object tracking](../modes/track.md) alongside distance and time data, crucial for tasks like traffic and surveillance. The accuracy of speed estimation directly influences the efficiency and reliability of various applications, making it a key component in the advancement of intelligent systems and real-time decision-making processes.
|
||||
[Speed estimation](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects) is the process of calculating the rate of movement of an object within a given context, often employed in [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) applications. Using [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) you can now calculate the speed of object using [object tracking](../modes/track.md) alongside distance and time data, crucial for tasks like traffic and surveillance. The accuracy of speed estimation directly influences the efficiency and reliability of various applications, making it a key component in the advancement of intelligent systems and real-time decision-making processes.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,12 +18,12 @@ keywords: Ultralytics YOLOv8, speed estimation, object tracking, computer vision
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Speed Estimation using Ultralytics YOLOv8
|
||||
<strong>Watch:</strong> Speed Estimation using Ultralytics YOLO11
|
||||
</p>
|
||||
|
||||
!!! tip "Check Out Our Blog"
|
||||
|
||||
For deeper insights into speed estimation, check out our blog post: [Ultralytics YOLOv8 for Speed Estimation in Computer Vision Projects](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects)
|
||||
For deeper insights into speed estimation, check out our blog post: [Ultralytics YOLO11 for Speed Estimation in Computer Vision Projects](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects)
|
||||
|
||||
## Advantages of Speed Estimation?
|
||||
|
||||
|
|
@ -35,10 +35,10 @@ keywords: Ultralytics YOLOv8, speed estimation, object tracking, computer vision
|
|||
|
||||
| Transportation | Transportation |
|
||||
| :------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Speed Estimation on Road using Ultralytics YOLOv8 | Speed Estimation on Bridge using Ultralytics YOLOv8 |
|
||||
|  |  |
|
||||
| Speed Estimation on Road using Ultralytics YOLO11 | Speed Estimation on Bridge using Ultralytics YOLO11 |
|
||||
|
||||
!!! example "Speed Estimation using YOLOv8 Example"
|
||||
!!! example "Speed Estimation using YOLO11 Example"
|
||||
|
||||
=== "Speed Estimation"
|
||||
|
||||
|
|
@ -47,7 +47,7 @@ keywords: Ultralytics YOLOv8, speed estimation, object tracking, computer vision
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
|
@ -102,9 +102,9 @@ keywords: Ultralytics YOLOv8, speed estimation, object tracking, computer vision
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I estimate object speed using Ultralytics YOLOv8?
|
||||
### How do I estimate object speed using Ultralytics YOLO11?
|
||||
|
||||
Estimating object speed with Ultralytics YOLOv8 involves combining [object detection](https://www.ultralytics.com/glossary/object-detection) and tracking techniques. First, you need to detect objects in each frame using the YOLOv8 model. Then, track these objects across frames to calculate their movement over time. Finally, use the distance traveled by the object between frames and the frame rate to estimate its speed.
|
||||
Estimating object speed with Ultralytics YOLO11 involves combining [object detection](https://www.ultralytics.com/glossary/object-detection) and tracking techniques. First, you need to detect objects in each frame using the YOLO11 model. Then, track these objects across frames to calculate their movement over time. Finally, use the distance traveled by the object between frames and the frame rate to estimate its speed.
|
||||
|
||||
**Example**:
|
||||
|
||||
|
|
@ -113,7 +113,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.model.names
|
||||
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
|
@ -142,43 +142,43 @@ cv2.destroyAllWindows()
|
|||
|
||||
For more details, refer to our [official blog post](https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects).
|
||||
|
||||
### What are the benefits of using Ultralytics YOLOv8 for speed estimation in traffic management?
|
||||
### What are the benefits of using Ultralytics YOLO11 for speed estimation in traffic management?
|
||||
|
||||
Using Ultralytics YOLOv8 for speed estimation offers significant advantages in traffic management:
|
||||
Using Ultralytics YOLO11 for speed estimation offers significant advantages in traffic management:
|
||||
|
||||
- **Enhanced Safety**: Accurately estimate vehicle speeds to detect over-speeding and improve road safety.
|
||||
- **Real-Time Monitoring**: Benefit from YOLOv8's real-time object detection capability to monitor traffic flow and congestion effectively.
|
||||
- **Real-Time Monitoring**: Benefit from YOLO11's real-time object detection capability to monitor traffic flow and congestion effectively.
|
||||
- **Scalability**: Deploy the model on various hardware setups, from edge devices to servers, ensuring flexible and scalable solutions for large-scale implementations.
|
||||
|
||||
For more applications, see [advantages of speed estimation](#advantages-of-speed-estimation).
|
||||
|
||||
### Can YOLOv8 be integrated with other AI frameworks like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) or [PyTorch](https://www.ultralytics.com/glossary/pytorch)?
|
||||
### Can YOLO11 be integrated with other AI frameworks like [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) or [PyTorch](https://www.ultralytics.com/glossary/pytorch)?
|
||||
|
||||
Yes, YOLOv8 can be integrated with other AI frameworks like TensorFlow and PyTorch. Ultralytics provides support for exporting YOLOv8 models to various formats like ONNX, TensorRT, and CoreML, ensuring smooth interoperability with other ML frameworks.
|
||||
Yes, YOLO11 can be integrated with other AI frameworks like TensorFlow and PyTorch. Ultralytics provides support for exporting YOLO11 models to various formats like ONNX, TensorRT, and CoreML, ensuring smooth interoperability with other ML frameworks.
|
||||
|
||||
To export a YOLOv8 model to ONNX format:
|
||||
To export a YOLO11 model to ONNX format:
|
||||
|
||||
```bash
|
||||
yolo export --weights yolov8n.pt --include onnx
|
||||
yolo export --weights yolo11n.pt --include onnx
|
||||
```
|
||||
|
||||
Learn more about exporting models in our [guide on export](../modes/export.md).
|
||||
|
||||
### How accurate is the speed estimation using Ultralytics YOLOv8?
|
||||
### How accurate is the speed estimation using Ultralytics YOLO11?
|
||||
|
||||
The [accuracy](https://www.ultralytics.com/glossary/accuracy) of speed estimation using Ultralytics YOLOv8 depends on several factors, including the quality of the object tracking, the resolution and frame rate of the video, and environmental variables. While the speed estimator provides reliable estimates, it may not be 100% accurate due to variances in frame processing speed and object occlusion.
|
||||
The [accuracy](https://www.ultralytics.com/glossary/accuracy) of speed estimation using Ultralytics YOLO11 depends on several factors, including the quality of the object tracking, the resolution and frame rate of the video, and environmental variables. While the speed estimator provides reliable estimates, it may not be 100% accurate due to variances in frame processing speed and object occlusion.
|
||||
|
||||
**Note**: Always consider margin of error and validate the estimates with ground truth data when possible.
|
||||
|
||||
For further accuracy improvement tips, check the [Arguments `SpeedEstimator` section](#arguments-speedestimator).
|
||||
|
||||
### Why choose Ultralytics YOLOv8 over other object detection models like TensorFlow Object Detection API?
|
||||
### Why choose Ultralytics YOLO11 over other object detection models like TensorFlow Object Detection API?
|
||||
|
||||
Ultralytics YOLOv8 offers several advantages over other object detection models, such as the TensorFlow Object Detection API:
|
||||
Ultralytics YOLO11 offers several advantages over other object detection models, such as the TensorFlow Object Detection API:
|
||||
|
||||
- **Real-Time Performance**: YOLOv8 is optimized for real-time detection, providing high speed and accuracy.
|
||||
- **Ease of Use**: Designed with a user-friendly interface, YOLOv8 simplifies model training and deployment.
|
||||
- **Real-Time Performance**: YOLO11 is optimized for real-time detection, providing high speed and accuracy.
|
||||
- **Ease of Use**: Designed with a user-friendly interface, YOLO11 simplifies model training and deployment.
|
||||
- **Versatility**: Supports multiple tasks, including object detection, segmentation, and pose estimation.
|
||||
- **Community and Support**: YOLOv8 is backed by an active community and extensive documentation, ensuring developers have the resources they need.
|
||||
- **Community and Support**: YOLO11 is backed by an active community and extensive documentation, ensuring developers have the resources they need.
|
||||
|
||||
For more information on the benefits of YOLOv8, explore our detailed [model page](../models/yolov8.md).
|
||||
For more information on the benefits of YOLO11, explore our detailed [model page](../models/yolov8.md).
|
||||
|
|
|
|||
|
|
@ -166,7 +166,7 @@ Once your model has been thoroughly tested, it's time to deploy it. Deployment i
|
|||
|
||||
- Setting Up the Environment: Configure the necessary infrastructure for your chosen deployment option, whether it's cloud-based (AWS, Google Cloud, Azure) or edge-based (local devices, IoT).
|
||||
|
||||
- **[Exporting the Model](../modes/export.md):** Export your model to the appropriate format (e.g., ONNX, TensorRT, CoreML for YOLOv8) to ensure compatibility with your deployment platform.
|
||||
- **[Exporting the Model](../modes/export.md):** Export your model to the appropriate format (e.g., ONNX, TensorRT, CoreML for YOLO11) to ensure compatibility with your deployment platform.
|
||||
- **Deploying the Model:** Deploy the model by setting up APIs or endpoints and integrating it with your application.
|
||||
- **Ensuring Scalability**: Implement load balancers, auto-scaling groups, and monitoring tools to manage resources and handle increasing data and user requests.
|
||||
|
||||
|
|
@ -188,12 +188,12 @@ Connecting with a community of computer vision enthusiasts can help you tackle a
|
|||
|
||||
### Community Resources
|
||||
|
||||
- **GitHub Issues:** Check out the [YOLOv8 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The active community and maintainers are there to help with specific issues.
|
||||
- **GitHub Issues:** Check out the [YOLO11 GitHub repository](https://github.com/ultralytics/ultralytics/issues) and use the Issues tab to ask questions, report bugs, and suggest new features. The active community and maintainers are there to help with specific issues.
|
||||
- **Ultralytics Discord Server:** Join the [Ultralytics Discord server](https://discord.com/invite/ultralytics) to interact with other users and developers, get support, and share insights.
|
||||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Explore the [official YOLOv8 documentation](./index.md) for detailed guides with helpful tips on different computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Explore the [official YOLO11 documentation](./index.md) for detailed guides with helpful tips on different computer vision tasks and projects.
|
||||
|
||||
Using these resources will help you overcome challenges and stay updated with the latest trends and best practices in the computer vision community.
|
||||
|
||||
|
|
@ -229,7 +229,7 @@ After splitting, apply data augmentation techniques like rotation, scaling, and
|
|||
|
||||
### How can I export my trained computer vision model for deployment?
|
||||
|
||||
Exporting your model ensures compatibility with different deployment platforms. Ultralytics provides multiple formats, including ONNX, TensorRT, and CoreML. To export your YOLOv8 model, follow this guide:
|
||||
Exporting your model ensures compatibility with different deployment platforms. Ultralytics provides multiple formats, including ONNX, TensorRT, and CoreML. To export your YOLO11 model, follow this guide:
|
||||
|
||||
- Use the `export` function with the desired format parameter.
|
||||
- Ensure the exported model fits the specifications of your deployment environment (e.g., edge devices, cloud).
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to set up a real-time object detection application using Streamlit and Ultralytics YOLOv8. Follow this step-by-step guide to implement webcam-based object detection.
|
||||
keywords: Streamlit, YOLOv8, Real-time Object Detection, Streamlit Application, YOLOv8 Streamlit Tutorial, Webcam Object Detection
|
||||
description: Learn how to set up a real-time object detection application using Streamlit and Ultralytics YOLO11. Follow this step-by-step guide to implement webcam-based object detection.
|
||||
keywords: Streamlit, YOLO11, Real-time Object Detection, Streamlit Application, YOLO11 Streamlit Tutorial, Webcam Object Detection
|
||||
---
|
||||
|
||||
# Live Inference with Streamlit Application using Ultralytics YOLOv8
|
||||
# Live Inference with Streamlit Application using Ultralytics YOLO11
|
||||
|
||||
## Introduction
|
||||
|
||||
Streamlit makes it simple to build and deploy interactive web applications. Combining this with Ultralytics YOLOv8 allows for real-time [object detection](https://www.ultralytics.com/glossary/object-detection) and analysis directly in your browser. YOLOv8 high accuracy and speed ensure seamless performance for live video streams, making it ideal for applications in security, retail, and beyond.
|
||||
Streamlit makes it simple to build and deploy interactive web applications. Combining this with Ultralytics YOLO11 allows for real-time [object detection](https://www.ultralytics.com/glossary/object-detection) and analysis directly in your browser. YOLO11 high accuracy and speed ensure seamless performance for live video streams, making it ideal for applications in security, retail, and beyond.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -23,14 +23,14 @@ Streamlit makes it simple to build and deploy interactive web applications. Comb
|
|||
|
||||
| Aquaculture | Animals husbandry |
|
||||
| :----------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |
|
||||
| Fish Detection using Ultralytics YOLOv8 | Animals Detection using Ultralytics YOLOv8 |
|
||||
|  |  |
|
||||
| Fish Detection using Ultralytics YOLO11 | Animals Detection using Ultralytics YOLO11 |
|
||||
|
||||
## Advantages of Live Inference
|
||||
|
||||
- **Seamless Real-Time Object Detection**: Streamlit combined with YOLOv8 enables real-time object detection directly from your webcam feed. This allows for immediate analysis and insights, making it ideal for applications requiring instant feedback.
|
||||
- **Seamless Real-Time Object Detection**: Streamlit combined with YOLO11 enables real-time object detection directly from your webcam feed. This allows for immediate analysis and insights, making it ideal for applications requiring instant feedback.
|
||||
- **User-Friendly Deployment**: Streamlit's interactive interface makes it easy to deploy and use the application without extensive technical knowledge. Users can start live inference with a simple click, enhancing accessibility and usability.
|
||||
- **Efficient Resource Utilization**: YOLOv8 optimized algorithm ensure high-speed processing with minimal computational resources. This efficiency allows for smooth and reliable webcam inference even on standard hardware, making advanced computer vision accessible to a wider audience.
|
||||
- **Efficient Resource Utilization**: YOLO11 optimized algorithm ensure high-speed processing with minimal computational resources. This efficiency allows for smooth and reliable webcam inference even on standard hardware, making advanced computer vision accessible to a wider audience.
|
||||
|
||||
## Streamlit Application Code
|
||||
|
||||
|
|
@ -56,7 +56,7 @@ Streamlit makes it simple to build and deploy interactive web applications. Comb
|
|||
yolo streamlit-predict
|
||||
```
|
||||
|
||||
This will launch the Streamlit application in your default web browser. You will see the main title, subtitle, and the sidebar with configuration options. Select your desired YOLOv8 model, set the confidence and NMS thresholds, and click the "Start" button to begin the real-time object detection.
|
||||
This will launch the Streamlit application in your default web browser. You will see the main title, subtitle, and the sidebar with configuration options. Select your desired YOLO11 model, set the confidence and NMS thresholds, and click the "Start" button to begin the real-time object detection.
|
||||
|
||||
You can optionally supply a specific model in Python:
|
||||
|
||||
|
|
@ -75,7 +75,7 @@ You can optionally supply a specific model in Python:
|
|||
|
||||
## Conclusion
|
||||
|
||||
By following this guide, you have successfully created a real-time object detection application using Streamlit and Ultralytics YOLOv8. This application allows you to experience the power of YOLOv8 in detecting objects through your webcam, with a user-friendly interface and the ability to stop the video stream at any time.
|
||||
By following this guide, you have successfully created a real-time object detection application using Streamlit and Ultralytics YOLO11. This application allows you to experience the power of YOLO11 in detecting objects through your webcam, with a user-friendly interface and the ability to stop the video stream at any time.
|
||||
|
||||
For further enhancements, you can explore adding more features such as recording the video stream, saving the annotated frames, or integrating with other computer vision libraries.
|
||||
|
||||
|
|
@ -90,13 +90,13 @@ Engage with the community to learn more, troubleshoot issues, and share your pro
|
|||
|
||||
### Official Documentation
|
||||
|
||||
- **Ultralytics YOLOv8 Documentation:** Refer to the [official YOLOv8 documentation](https://docs.ultralytics.com/) for comprehensive guides and insights on various computer vision tasks and projects.
|
||||
- **Ultralytics YOLO11 Documentation:** Refer to the [official YOLO11 documentation](https://docs.ultralytics.com/) for comprehensive guides and insights on various computer vision tasks and projects.
|
||||
|
||||
## FAQ
|
||||
|
||||
### How can I set up a real-time object detection application using Streamlit and Ultralytics YOLOv8?
|
||||
### How can I set up a real-time object detection application using Streamlit and Ultralytics YOLO11?
|
||||
|
||||
Setting up a real-time object detection application with Streamlit and Ultralytics YOLOv8 is straightforward. First, ensure you have the Ultralytics Python package installed using:
|
||||
Setting up a real-time object detection application with Streamlit and Ultralytics YOLO11 is straightforward. First, ensure you have the Ultralytics Python package installed using:
|
||||
|
||||
```bash
|
||||
pip install ultralytics
|
||||
|
|
@ -124,29 +124,29 @@ Then, you can create a basic Streamlit application to run live inference:
|
|||
|
||||
For more details on the practical setup, refer to the [Streamlit Application Code section](#streamlit-application-code) of the documentation.
|
||||
|
||||
### What are the main advantages of using Ultralytics YOLOv8 with Streamlit for real-time object detection?
|
||||
### What are the main advantages of using Ultralytics YOLO11 with Streamlit for real-time object detection?
|
||||
|
||||
Using Ultralytics YOLOv8 with Streamlit for real-time object detection offers several advantages:
|
||||
Using Ultralytics YOLO11 with Streamlit for real-time object detection offers several advantages:
|
||||
|
||||
- **Seamless Real-Time Detection**: Achieve high-[accuracy](https://www.ultralytics.com/glossary/accuracy), real-time object detection directly from webcam feeds.
|
||||
- **User-Friendly Interface**: Streamlit's intuitive interface allows easy use and deployment without extensive technical knowledge.
|
||||
- **Resource Efficiency**: YOLOv8's optimized algorithms ensure high-speed processing with minimal computational resources.
|
||||
- **Resource Efficiency**: YOLO11's optimized algorithms ensure high-speed processing with minimal computational resources.
|
||||
|
||||
Discover more about these advantages [here](#advantages-of-live-inference).
|
||||
|
||||
### How do I deploy a Streamlit object detection application in my web browser?
|
||||
|
||||
After coding your Streamlit application integrating Ultralytics YOLOv8, you can deploy it by running:
|
||||
After coding your Streamlit application integrating Ultralytics YOLO11, you can deploy it by running:
|
||||
|
||||
```bash
|
||||
streamlit run <file-name.py>
|
||||
```
|
||||
|
||||
This command will launch the application in your default web browser, enabling you to select YOLOv8 models, set confidence, and NMS thresholds, and start real-time object detection with a simple click. For a detailed guide, refer to the [Streamlit Application Code](#streamlit-application-code) section.
|
||||
This command will launch the application in your default web browser, enabling you to select YOLO11 models, set confidence, and NMS thresholds, and start real-time object detection with a simple click. For a detailed guide, refer to the [Streamlit Application Code](#streamlit-application-code) section.
|
||||
|
||||
### What are some use cases for real-time object detection using Streamlit and Ultralytics YOLOv8?
|
||||
### What are some use cases for real-time object detection using Streamlit and Ultralytics YOLO11?
|
||||
|
||||
Real-time object detection using Streamlit and Ultralytics YOLOv8 can be applied in various sectors:
|
||||
Real-time object detection using Streamlit and Ultralytics YOLO11 can be applied in various sectors:
|
||||
|
||||
- **Security**: Real-time monitoring for unauthorized access.
|
||||
- **Retail**: Customer counting, shelf management, and more.
|
||||
|
|
@ -154,12 +154,12 @@ Real-time object detection using Streamlit and Ultralytics YOLOv8 can be applied
|
|||
|
||||
For more in-depth use cases and examples, explore [Ultralytics Solutions](https://docs.ultralytics.com/solutions/).
|
||||
|
||||
### How does Ultralytics YOLOv8 compare to other object detection models like YOLOv5 and RCNNs?
|
||||
### How does Ultralytics YOLO11 compare to other object detection models like YOLOv5 and RCNNs?
|
||||
|
||||
Ultralytics YOLOv8 provides several enhancements over prior models like YOLOv5 and RCNNs:
|
||||
Ultralytics YOLO11 provides several enhancements over prior models like YOLOv5 and RCNNs:
|
||||
|
||||
- **Higher Speed and Accuracy**: Improved performance for real-time applications.
|
||||
- **Ease of Use**: Simplified interfaces and deployment.
|
||||
- **Resource Efficiency**: Optimized for better speed with minimal computational requirements.
|
||||
|
||||
For a comprehensive comparison, check [Ultralytics YOLOv8 Documentation](https://docs.ultralytics.com/models/yolov8/) and related blog posts discussing model performance.
|
||||
For a comprehensive comparison, check [Ultralytics YOLO11 Documentation](https://docs.ultralytics.com/models/yolov8/) and related blog posts discussing model performance.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
---
|
||||
comments: true
|
||||
description: Learn how to integrate Ultralytics YOLOv8 with NVIDIA Triton Inference Server for scalable, high-performance AI model deployment.
|
||||
keywords: Triton Inference Server, YOLOv8, Ultralytics, NVIDIA, deep learning, AI model deployment, ONNX, scalable inference
|
||||
description: Learn how to integrate Ultralytics YOLO11 with NVIDIA Triton Inference Server for scalable, high-performance AI model deployment.
|
||||
keywords: Triton Inference Server, YOLO11, Ultralytics, NVIDIA, deep learning, AI model deployment, ONNX, scalable inference
|
||||
---
|
||||
|
||||
# Triton Inference Server with Ultralytics YOLOv8
|
||||
# Triton Inference Server with Ultralytics YOLO11
|
||||
|
||||
The [Triton Inference Server](https://developer.nvidia.com/triton-inference-server) (formerly known as TensorRT Inference Server) is an open-source software solution developed by NVIDIA. It provides a cloud inference solution optimized for NVIDIA GPUs. Triton simplifies the deployment of AI models at scale in production. Integrating Ultralytics YOLOv8 with Triton Inference Server allows you to deploy scalable, high-performance [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) inference workloads. This guide provides steps to set up and test the integration.
|
||||
The [Triton Inference Server](https://developer.nvidia.com/triton-inference-server) (formerly known as TensorRT Inference Server) is an open-source software solution developed by NVIDIA. It provides a cloud inference solution optimized for NVIDIA GPUs. Triton simplifies the deployment of AI models at scale in production. Integrating Ultralytics YOLO11 with Triton Inference Server allows you to deploy scalable, high-performance [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) inference workloads. This guide provides steps to set up and test the integration.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -38,7 +38,7 @@ Ensure you have the following prerequisites before proceeding:
|
|||
pip install tritonclient[all]
|
||||
```
|
||||
|
||||
## Exporting YOLOv8 to ONNX Format
|
||||
## Exporting YOLO11 to ONNX Format
|
||||
|
||||
Before deploying the model on Triton, it must be exported to the ONNX format. ONNX (Open Neural Network Exchange) is a format that allows models to be transferred between different deep learning frameworks. Use the `export` function from the `YOLO` class:
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ Before deploying the model on Triton, it must be exported to the ONNX format. ON
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n.pt") # load an official model
|
||||
model = YOLO("yolo11n.pt") # load an official model
|
||||
|
||||
# Export the model
|
||||
onnx_file = model.export(format="onnx", dynamic=True)
|
||||
|
|
@ -141,21 +141,21 @@ subprocess.call(f"docker kill {container_id}", shell=True)
|
|||
|
||||
---
|
||||
|
||||
By following the above steps, you can deploy and run Ultralytics YOLOv8 models efficiently on Triton Inference Server, providing a scalable and high-performance solution for deep learning inference tasks. If you face any issues or have further queries, refer to the [official Triton documentation](https://docs.nvidia.com/deeplearning/triton-inference-server/user-guide/docs/index.html) or reach out to the Ultralytics community for support.
|
||||
By following the above steps, you can deploy and run Ultralytics YOLO11 models efficiently on Triton Inference Server, providing a scalable and high-performance solution for deep learning inference tasks. If you face any issues or have further queries, refer to the [official Triton documentation](https://docs.nvidia.com/deeplearning/triton-inference-server/user-guide/docs/index.html) or reach out to the Ultralytics community for support.
|
||||
|
||||
## FAQ
|
||||
|
||||
### How do I set up Ultralytics YOLOv8 with NVIDIA Triton Inference Server?
|
||||
### How do I set up Ultralytics YOLO11 with NVIDIA Triton Inference Server?
|
||||
|
||||
Setting up [Ultralytics YOLOv8](https://docs.ultralytics.com/models/yolov8/) with [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) involves a few key steps:
|
||||
Setting up [Ultralytics YOLO11](https://docs.ultralytics.com/models/yolov8/) with [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) involves a few key steps:
|
||||
|
||||
1. **Export YOLOv8 to ONNX format**:
|
||||
1. **Export YOLO11 to ONNX format**:
|
||||
|
||||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n.pt") # load an official model
|
||||
model = YOLO("yolo11n.pt") # load an official model
|
||||
|
||||
# Export the model to ONNX format
|
||||
onnx_file = model.export(format="onnx", dynamic=True)
|
||||
|
|
@ -209,21 +209,21 @@ Setting up [Ultralytics YOLOv8](https://docs.ultralytics.com/models/yolov8/) wit
|
|||
time.sleep(1)
|
||||
```
|
||||
|
||||
This setup can help you efficiently deploy YOLOv8 models at scale on Triton Inference Server for high-performance AI model inference.
|
||||
This setup can help you efficiently deploy YOLO11 models at scale on Triton Inference Server for high-performance AI model inference.
|
||||
|
||||
### What benefits does using Ultralytics YOLOv8 with NVIDIA Triton Inference Server offer?
|
||||
### What benefits does using Ultralytics YOLO11 with NVIDIA Triton Inference Server offer?
|
||||
|
||||
Integrating [Ultralytics YOLOv8](../models/yolov8.md) with [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) provides several advantages:
|
||||
Integrating [Ultralytics YOLO11](../models/yolov8.md) with [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) provides several advantages:
|
||||
|
||||
- **Scalable AI Inference**: Triton allows serving multiple models from a single server instance, supporting dynamic model loading and unloading, making it highly scalable for diverse AI workloads.
|
||||
- **High Performance**: Optimized for NVIDIA GPUs, Triton Inference Server ensures high-speed inference operations, perfect for real-time applications such as [object detection](https://www.ultralytics.com/glossary/object-detection).
|
||||
- **Ensemble and Model Versioning**: Triton's ensemble mode enables combining multiple models to improve results, and its model versioning supports A/B testing and rolling updates.
|
||||
|
||||
For detailed instructions on setting up and running YOLOv8 with Triton, you can refer to the [setup guide](#setting-up-triton-model-repository).
|
||||
For detailed instructions on setting up and running YOLO11 with Triton, you can refer to the [setup guide](#setting-up-triton-model-repository).
|
||||
|
||||
### Why should I export my YOLOv8 model to ONNX format before using Triton Inference Server?
|
||||
### Why should I export my YOLO11 model to ONNX format before using Triton Inference Server?
|
||||
|
||||
Using ONNX (Open Neural Network Exchange) format for your [Ultralytics YOLOv8](../models/yolov8.md) model before deploying it on [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) offers several key benefits:
|
||||
Using ONNX (Open Neural Network Exchange) format for your [Ultralytics YOLO11](../models/yolov8.md) model before deploying it on [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server) offers several key benefits:
|
||||
|
||||
- **Interoperability**: ONNX format supports transfer between different deep learning frameworks (such as PyTorch, TensorFlow), ensuring broader compatibility.
|
||||
- **Optimization**: Many deployment environments, including Triton, optimize for ONNX, enabling faster inference and better performance.
|
||||
|
|
@ -234,15 +234,15 @@ To export your model, use:
|
|||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
onnx_file = model.export(format="onnx", dynamic=True)
|
||||
```
|
||||
|
||||
You can follow the steps in the [exporting guide](../modes/export.md) to complete the process.
|
||||
|
||||
### Can I run inference using the Ultralytics YOLOv8 model on Triton Inference Server?
|
||||
### Can I run inference using the Ultralytics YOLO11 model on Triton Inference Server?
|
||||
|
||||
Yes, you can run inference using the [Ultralytics YOLOv8](../models/yolov8.md) model on [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server). Once your model is set up in the Triton Model Repository and the server is running, you can load and run inference on your model as follows:
|
||||
Yes, you can run inference using the [Ultralytics YOLO11](../models/yolov8.md) model on [NVIDIA Triton Inference Server](https://developer.nvidia.com/triton-inference-server). Once your model is set up in the Triton Model Repository and the server is running, you can load and run inference on your model as follows:
|
||||
|
||||
```python
|
||||
from ultralytics import YOLO
|
||||
|
|
@ -254,14 +254,14 @@ model = YOLO("http://localhost:8000/yolo", task="detect")
|
|||
results = model("path/to/image.jpg")
|
||||
```
|
||||
|
||||
For an in-depth guide on setting up and running Triton Server with YOLOv8, refer to the [running triton inference server](#running-triton-inference-server) section.
|
||||
For an in-depth guide on setting up and running Triton Server with YOLO11, refer to the [running triton inference server](#running-triton-inference-server) section.
|
||||
|
||||
### How does Ultralytics YOLOv8 compare to [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) and PyTorch models for deployment?
|
||||
### How does Ultralytics YOLO11 compare to [TensorFlow](https://www.ultralytics.com/glossary/tensorflow) and PyTorch models for deployment?
|
||||
|
||||
[Ultralytics YOLOv8](https://docs.ultralytics.com/models/yolov8/) offers several unique advantages compared to TensorFlow and PyTorch models for deployment:
|
||||
[Ultralytics YOLO11](https://docs.ultralytics.com/models/yolov8/) offers several unique advantages compared to TensorFlow and PyTorch models for deployment:
|
||||
|
||||
- **Real-time Performance**: Optimized for real-time object detection tasks, YOLOv8 provides state-of-the-art [accuracy](https://www.ultralytics.com/glossary/accuracy) and speed, making it ideal for applications requiring live video analytics.
|
||||
- **Ease of Use**: YOLOv8 integrates seamlessly with Triton Inference Server and supports diverse export formats (ONNX, TensorRT, CoreML), making it flexible for various deployment scenarios.
|
||||
- **Advanced Features**: YOLOv8 includes features like dynamic model loading, model versioning, and ensemble inference, which are crucial for scalable and reliable AI deployments.
|
||||
- **Real-time Performance**: Optimized for real-time object detection tasks, YOLO11 provides state-of-the-art [accuracy](https://www.ultralytics.com/glossary/accuracy) and speed, making it ideal for applications requiring live video analytics.
|
||||
- **Ease of Use**: YOLO11 integrates seamlessly with Triton Inference Server and supports diverse export formats (ONNX, TensorRT, CoreML), making it flexible for various deployment scenarios.
|
||||
- **Advanced Features**: YOLO11 includes features like dynamic model loading, model versioning, and ensemble inference, which are crucial for scalable and reliable AI deployments.
|
||||
|
||||
For more details, compare the deployment options in the [model deployment guide](../modes/export.md).
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ The VSCode compatible protocols for viewing images using the integrated terminal
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Run inference on an image
|
||||
results = model.predict(source="ultralytics/assets/bus.jpg")
|
||||
|
|
@ -111,7 +111,7 @@ from sixel import SixelWriter
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Load a model
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Run inference on an image
|
||||
results = model.predict(source="ultralytics/assets/bus.jpg")
|
||||
|
|
@ -164,7 +164,7 @@ To view YOLO inference results in a VSCode terminal on macOS or Linux, follow th
|
|||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
results = model.predict(source="path_to_image")
|
||||
plot = results[0].plot()
|
||||
```
|
||||
|
|
|
|||
|
|
@ -1,23 +1,23 @@
|
|||
---
|
||||
comments: true
|
||||
description: Discover VisionEye's object mapping and tracking powered by Ultralytics YOLOv8. Simulate human eye precision, track objects, and calculate distances effortlessly.
|
||||
keywords: VisionEye, YOLOv8, Ultralytics, object mapping, object tracking, distance calculation, computer vision, AI, machine learning, Python, tutorial
|
||||
description: Discover VisionEye's object mapping and tracking powered by Ultralytics YOLO11. Simulate human eye precision, track objects, and calculate distances effortlessly.
|
||||
keywords: VisionEye, YOLO11, Ultralytics, object mapping, object tracking, distance calculation, computer vision, AI, machine learning, Python, tutorial
|
||||
---
|
||||
|
||||
# VisionEye View Object Mapping using Ultralytics YOLOv8 🚀
|
||||
# VisionEye View Object Mapping using Ultralytics YOLO11 🚀
|
||||
|
||||
## What is VisionEye Object Mapping?
|
||||
|
||||
[Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) VisionEye offers the capability for computers to identify and pinpoint objects, simulating the observational [precision](https://www.ultralytics.com/glossary/precision) of the human eye. This functionality enables computers to discern and focus on specific objects, much like the way the human eye observes details from a particular viewpoint.
|
||||
[Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) VisionEye offers the capability for computers to identify and pinpoint objects, simulating the observational [precision](https://www.ultralytics.com/glossary/precision) of the human eye. This functionality enables computers to discern and focus on specific objects, much like the way the human eye observes details from a particular viewpoint.
|
||||
|
||||
## Samples
|
||||
|
||||
| VisionEye View | VisionEye View With Object Tracking | VisionEye View With Distance Calculation |
|
||||
| :----------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
|
||||
|  |  |  |
|
||||
| VisionEye View Object Mapping using Ultralytics YOLOv8 | VisionEye View Object Mapping with Object Tracking using Ultralytics YOLOv8 | VisionEye View with Distance Calculation using Ultralytics YOLOv8 |
|
||||
|  |  |  |
|
||||
| VisionEye View Object Mapping using Ultralytics YOLO11 | VisionEye View Object Mapping with Object Tracking using Ultralytics YOLO11 | VisionEye View with Distance Calculation using Ultralytics YOLO11 |
|
||||
|
||||
!!! example "VisionEye Object Mapping using YOLOv8"
|
||||
!!! example "VisionEye Object Mapping using YOLO11"
|
||||
|
||||
=== "VisionEye Object Mapping"
|
||||
|
||||
|
|
@ -27,7 +27,7 @@ keywords: VisionEye, YOLOv8, Ultralytics, object mapping, object tracking, dista
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
names = model.model.names
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -71,7 +71,7 @@ keywords: VisionEye, YOLOv8, Ultralytics, object mapping, object tracking, dista
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator, colors
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
||||
|
|
@ -118,7 +118,7 @@ keywords: VisionEye, YOLOv8, Ultralytics, object mapping, object tracking, dista
|
|||
from ultralytics import YOLO
|
||||
from ultralytics.utils.plotting import Annotator
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("Path/to/video/file.mp4")
|
||||
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -180,16 +180,16 @@ For any inquiries, feel free to post your questions in the [Ultralytics Issue Se
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I start using VisionEye Object Mapping with Ultralytics YOLOv8?
|
||||
### How do I start using VisionEye Object Mapping with Ultralytics YOLO11?
|
||||
|
||||
To start using VisionEye Object Mapping with Ultralytics YOLOv8, first, you'll need to install the Ultralytics YOLO package via pip. Then, you can use the sample code provided in the documentation to set up [object detection](https://www.ultralytics.com/glossary/object-detection) with VisionEye. Here's a simple example to get you started:
|
||||
To start using VisionEye Object Mapping with Ultralytics YOLO11, first, you'll need to install the Ultralytics YOLO package via pip. Then, you can use the sample code provided in the documentation to set up [object detection](https://www.ultralytics.com/glossary/object-detection) with VisionEye. Here's a simple example to get you started:
|
||||
|
||||
```python
|
||||
import cv2
|
||||
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
||||
while True:
|
||||
|
|
@ -210,12 +210,12 @@ cap.release()
|
|||
cv2.destroyAllWindows()
|
||||
```
|
||||
|
||||
### What are the key features of VisionEye's object tracking capability using Ultralytics YOLOv8?
|
||||
### What are the key features of VisionEye's object tracking capability using Ultralytics YOLO11?
|
||||
|
||||
VisionEye's object tracking with Ultralytics YOLOv8 allows users to follow the movement of objects within a video frame. Key features include:
|
||||
VisionEye's object tracking with Ultralytics YOLO11 allows users to follow the movement of objects within a video frame. Key features include:
|
||||
|
||||
1. **Real-Time Object Tracking**: Keeps up with objects as they move.
|
||||
2. **Object Identification**: Utilizes YOLOv8's powerful detection algorithms.
|
||||
2. **Object Identification**: Utilizes YOLO11's powerful detection algorithms.
|
||||
3. **Distance Calculation**: Calculates distances between objects and specified points.
|
||||
4. **Annotation and Visualization**: Provides visual markers for tracked objects.
|
||||
|
||||
|
|
@ -226,7 +226,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
|
||||
while True:
|
||||
|
|
@ -249,9 +249,9 @@ cv2.destroyAllWindows()
|
|||
|
||||
For a comprehensive guide, visit the [VisionEye Object Mapping with Object Tracking](#samples).
|
||||
|
||||
### How can I calculate distances with VisionEye's YOLOv8 model?
|
||||
### How can I calculate distances with VisionEye's YOLO11 model?
|
||||
|
||||
Distance calculation with VisionEye and Ultralytics YOLOv8 involves determining the distance of detected objects from a specified point in the frame. It enhances spatial analysis capabilities, useful in applications such as autonomous driving and surveillance.
|
||||
Distance calculation with VisionEye and Ultralytics YOLO11 involves determining the distance of detected objects from a specified point in the frame. It enhances spatial analysis capabilities, useful in applications such as autonomous driving and surveillance.
|
||||
|
||||
Here's a simplified example:
|
||||
|
||||
|
|
@ -262,7 +262,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO
|
||||
|
||||
model = YOLO("yolov8s.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
center_point = (0, 480) # Example center point
|
||||
pixel_per_meter = 10
|
||||
|
|
@ -290,19 +290,19 @@ cv2.destroyAllWindows()
|
|||
|
||||
For detailed instructions, refer to the [VisionEye with Distance Calculation](#samples).
|
||||
|
||||
### Why should I use Ultralytics YOLOv8 for object mapping and tracking?
|
||||
### Why should I use Ultralytics YOLO11 for object mapping and tracking?
|
||||
|
||||
Ultralytics YOLOv8 is renowned for its speed, [accuracy](https://www.ultralytics.com/glossary/accuracy), and ease of integration, making it a top choice for object mapping and tracking. Key advantages include:
|
||||
Ultralytics YOLO11 is renowned for its speed, [accuracy](https://www.ultralytics.com/glossary/accuracy), and ease of integration, making it a top choice for object mapping and tracking. Key advantages include:
|
||||
|
||||
1. **State-of-the-art Performance**: Delivers high accuracy in real-time object detection.
|
||||
2. **Flexibility**: Supports various tasks such as detection, tracking, and distance calculation.
|
||||
3. **Community and Support**: Extensive documentation and active GitHub community for troubleshooting and enhancements.
|
||||
4. **Ease of Use**: Intuitive API simplifies complex tasks, allowing for rapid deployment and iteration.
|
||||
|
||||
For more information on applications and benefits, check out the [Ultralytics YOLOv8 documentation](https://docs.ultralytics.com/models/yolov8/).
|
||||
For more information on applications and benefits, check out the [Ultralytics YOLO11 documentation](https://docs.ultralytics.com/models/yolov8/).
|
||||
|
||||
### How can I integrate VisionEye with other [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) tools like Comet or ClearML?
|
||||
|
||||
Ultralytics YOLOv8 can integrate seamlessly with various machine learning tools like Comet and ClearML, enhancing experiment tracking, collaboration, and reproducibility. Follow the detailed guides on [how to use YOLOv5 with Comet](https://www.ultralytics.com/blog/how-to-use-yolov5-with-comet) and [integrate YOLOv8 with ClearML](https://docs.ultralytics.com/integrations/clearml/) to get started.
|
||||
Ultralytics YOLO11 can integrate seamlessly with various machine learning tools like Comet and ClearML, enhancing experiment tracking, collaboration, and reproducibility. Follow the detailed guides on [how to use YOLOv5 with Comet](https://www.ultralytics.com/blog/how-to-use-yolov5-with-comet) and [integrate YOLO11 with ClearML](https://docs.ultralytics.com/integrations/clearml/) to get started.
|
||||
|
||||
For further exploration and integration examples, check our [Ultralytics Integrations Guide](https://docs.ultralytics.com/integrations/).
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
---
|
||||
comments: true
|
||||
description: Optimize your fitness routine with real-time workouts monitoring using Ultralytics YOLOv8. Track and improve your exercise form and performance.
|
||||
keywords: workouts monitoring, Ultralytics YOLOv8, pose estimation, fitness tracking, exercise assessment, real-time feedback, exercise form, performance metrics
|
||||
description: Optimize your fitness routine with real-time workouts monitoring using Ultralytics YOLO11. Track and improve your exercise form and performance.
|
||||
keywords: workouts monitoring, Ultralytics YOLO11, pose estimation, fitness tracking, exercise assessment, real-time feedback, exercise form, performance metrics
|
||||
---
|
||||
|
||||
# Workouts Monitoring using Ultralytics YOLOv8
|
||||
# Workouts Monitoring using Ultralytics YOLO11
|
||||
|
||||
Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics/) enhances exercise assessment by accurately tracking key body landmarks and joints in real-time. This technology provides instant feedback on exercise form, tracks workout routines, and measures performance metrics, optimizing training sessions for users and trainers alike.
|
||||
Monitoring workouts through pose estimation with [Ultralytics YOLO11](https://github.com/ultralytics/ultralytics/) enhances exercise assessment by accurately tracking key body landmarks and joints in real-time. This technology provides instant feedback on exercise form, tracks workout routines, and measures performance metrics, optimizing training sessions for users and trainers alike.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -16,7 +16,7 @@ Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://gi
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Workouts Monitoring using Ultralytics YOLOv8 | Pushups, Pullups, Ab Workouts
|
||||
<strong>Watch:</strong> Workouts Monitoring using Ultralytics YOLO11 | Pushups, Pullups, Ab Workouts
|
||||
</p>
|
||||
|
||||
## Advantages of Workouts Monitoring?
|
||||
|
|
@ -43,7 +43,7 @@ Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://gi
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n-pose.pt")
|
||||
model = YOLO("yolo11n-pose.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -74,7 +74,7 @@ Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://gi
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n-pose.pt")
|
||||
model = YOLO("yolo11n-pose.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -108,7 +108,7 @@ Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://gi
|
|||
|
||||
### KeyPoints Map
|
||||
|
||||

|
||||

|
||||
|
||||
### Arguments `AIGym`
|
||||
|
||||
|
|
@ -131,16 +131,16 @@ Monitoring workouts through pose estimation with [Ultralytics YOLOv8](https://gi
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I monitor my workouts using Ultralytics YOLOv8?
|
||||
### How do I monitor my workouts using Ultralytics YOLO11?
|
||||
|
||||
To monitor your workouts using Ultralytics YOLOv8, you can utilize the pose estimation capabilities to track and analyze key body landmarks and joints in real-time. This allows you to receive instant feedback on your exercise form, count repetitions, and measure performance metrics. You can start by using the provided example code for pushups, pullups, or ab workouts as shown:
|
||||
To monitor your workouts using Ultralytics YOLO11, you can utilize the pose estimation capabilities to track and analyze key body landmarks and joints in real-time. This allows you to receive instant feedback on your exercise form, count repetitions, and measure performance metrics. You can start by using the provided example code for pushups, pullups, or ab workouts as shown:
|
||||
|
||||
```python
|
||||
import cv2
|
||||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n-pose.pt")
|
||||
model = YOLO("yolo11n-pose.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -165,9 +165,9 @@ cv2.destroyAllWindows()
|
|||
|
||||
For further customization and settings, you can refer to the [AIGym](#arguments-aigym) section in the documentation.
|
||||
|
||||
### What are the benefits of using Ultralytics YOLOv8 for workout monitoring?
|
||||
### What are the benefits of using Ultralytics YOLO11 for workout monitoring?
|
||||
|
||||
Using Ultralytics YOLOv8 for workout monitoring provides several key benefits:
|
||||
Using Ultralytics YOLO11 for workout monitoring provides several key benefits:
|
||||
|
||||
- **Optimized Performance:** By tailoring workouts based on monitoring data, you can achieve better results.
|
||||
- **Goal Achievement:** Easily track and adjust fitness goals for measurable progress.
|
||||
|
|
@ -177,13 +177,13 @@ Using Ultralytics YOLOv8 for workout monitoring provides several key benefits:
|
|||
|
||||
You can watch a [YouTube video demonstration](https://www.youtube.com/watch?v=LGGxqLZtvuw) to see these benefits in action.
|
||||
|
||||
### How accurate is Ultralytics YOLOv8 in detecting and tracking exercises?
|
||||
### How accurate is Ultralytics YOLO11 in detecting and tracking exercises?
|
||||
|
||||
Ultralytics YOLOv8 is highly accurate in detecting and tracking exercises due to its state-of-the-art pose estimation capabilities. It can accurately track key body landmarks and joints, providing real-time feedback on exercise form and performance metrics. The model's pretrained weights and robust architecture ensure high [precision](https://www.ultralytics.com/glossary/precision) and reliability. For real-world examples, check out the [real-world applications](#real-world-applications) section in the documentation, which showcases pushups and pullups counting.
|
||||
Ultralytics YOLO11 is highly accurate in detecting and tracking exercises due to its state-of-the-art pose estimation capabilities. It can accurately track key body landmarks and joints, providing real-time feedback on exercise form and performance metrics. The model's pretrained weights and robust architecture ensure high [precision](https://www.ultralytics.com/glossary/precision) and reliability. For real-world examples, check out the [real-world applications](#real-world-applications) section in the documentation, which showcases pushups and pullups counting.
|
||||
|
||||
### Can I use Ultralytics YOLOv8 for custom workout routines?
|
||||
### Can I use Ultralytics YOLO11 for custom workout routines?
|
||||
|
||||
Yes, Ultralytics YOLOv8 can be adapted for custom workout routines. The `AIGym` class supports different pose types such as "pushup", "pullup", and "abworkout." You can specify keypoints and angles to detect specific exercises. Here is an example setup:
|
||||
Yes, Ultralytics YOLO11 can be adapted for custom workout routines. The `AIGym` class supports different pose types such as "pushup", "pullup", and "abworkout." You can specify keypoints and angles to detect specific exercises. Here is an example setup:
|
||||
|
||||
```python
|
||||
from ultralytics import solutions
|
||||
|
|
@ -198,7 +198,7 @@ gym_object = solutions.AIGym(
|
|||
|
||||
For more details on setting arguments, refer to the [Arguments `AIGym`](#arguments-aigym) section. This flexibility allows you to monitor various exercises and customize routines based on your needs.
|
||||
|
||||
### How can I save the workout monitoring output using Ultralytics YOLOv8?
|
||||
### How can I save the workout monitoring output using Ultralytics YOLO11?
|
||||
|
||||
To save the workout monitoring output, you can modify the code to include a video writer that saves the processed frames. Here's an example:
|
||||
|
||||
|
|
@ -207,7 +207,7 @@ import cv2
|
|||
|
||||
from ultralytics import YOLO, solutions
|
||||
|
||||
model = YOLO("yolov8n-pose.pt")
|
||||
model = YOLO("yolo11n-pose.pt")
|
||||
cap = cv2.VideoCapture("path/to/video/file.mp4")
|
||||
assert cap.isOpened(), "Error reading video file"
|
||||
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
|
||||
|
|
@ -234,4 +234,4 @@ cv2.destroyAllWindows()
|
|||
video_writer.release()
|
||||
```
|
||||
|
||||
This setup writes the monitored video to an output file. For more details, refer to the [Workouts Monitoring with Save Output](#workouts-monitoring-using-ultralytics-yolov8) section.
|
||||
This setup writes the monitored video to an output file. For more details, refer to the [Workouts Monitoring with Save Output](#workouts-monitoring-using-ultralytics-yolo11) section.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
comments: true
|
||||
description: Comprehensive guide to troubleshoot common YOLOv8 issues, from installation errors to model training challenges. Enhance your Ultralytics projects with our expert tips.
|
||||
keywords: YOLO, YOLOv8, troubleshooting, installation errors, model training, GPU issues, Ultralytics, AI, computer vision, deep learning, Python, CUDA, PyTorch, debugging
|
||||
description: Comprehensive guide to troubleshoot common YOLO11 issues, from installation errors to model training challenges. Enhance your Ultralytics projects with our expert tips.
|
||||
keywords: YOLO, YOLO11, troubleshooting, installation errors, model training, GPU issues, Ultralytics, AI, computer vision, deep learning, Python, CUDA, PyTorch, debugging
|
||||
---
|
||||
|
||||
# Troubleshooting Common YOLO Issues
|
||||
|
|
@ -12,7 +12,7 @@ keywords: YOLO, YOLOv8, troubleshooting, installation errors, model training, GP
|
|||
|
||||
## Introduction
|
||||
|
||||
This guide serves as a comprehensive aid for troubleshooting common issues encountered while working with YOLOv8 on your Ultralytics projects. Navigating through these issues can be a breeze with the right guidance, ensuring your projects remain on track without unnecessary delays.
|
||||
This guide serves as a comprehensive aid for troubleshooting common issues encountered while working with YOLO11 on your Ultralytics projects. Navigating through these issues can be a breeze with the right guidance, ensuring your projects remain on track without unnecessary delays.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -22,7 +22,7 @@ This guide serves as a comprehensive aid for troubleshooting common issues encou
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Ultralytics YOLOv8 Common Issues | Installation Errors, Model Training Issues
|
||||
<strong>Watch:</strong> Ultralytics YOLO11 Common Issues | Installation Errors, Model Training Issues
|
||||
</p>
|
||||
|
||||
## Common Issues
|
||||
|
|
@ -41,7 +41,7 @@ Installation errors can arise due to various reasons, such as incompatible versi
|
|||
|
||||
Additionally, here are some common installation issues users have encountered, along with their respective solutions:
|
||||
|
||||
- Import Errors or Dependency Issues - If you're getting errors during the import of YOLOv8, or you're having issues related to dependencies, consider the following troubleshooting steps:
|
||||
- Import Errors or Dependency Issues - If you're getting errors during the import of YOLO11, or you're having issues related to dependencies, consider the following troubleshooting steps:
|
||||
|
||||
- **Fresh Installation**: Sometimes, starting with a fresh installation can resolve unexpected issues. Especially with libraries like Ultralytics, where updates might introduce changes to the file tree structure or functionalities.
|
||||
|
||||
|
|
@ -53,7 +53,7 @@ Additionally, here are some common installation issues users have encountered, a
|
|||
|
||||
- Remember, keeping your libraries and dependencies up-to-date is crucial for a smooth and error-free experience.
|
||||
|
||||
- Running YOLOv8 on GPU - If you're having trouble running YOLOv8 on GPU, consider the following troubleshooting steps:
|
||||
- Running YOLO11 on GPU - If you're having trouble running YOLO11 on GPU, consider the following troubleshooting steps:
|
||||
|
||||
- **Verify CUDA Compatibility and Installation**: Ensure your GPU is CUDA compatible and that CUDA is correctly installed. Use the `nvidia-smi` command to check the status of your NVIDIA GPU and CUDA version.
|
||||
|
||||
|
|
@ -63,7 +63,7 @@ Additionally, here are some common installation issues users have encountered, a
|
|||
|
||||
- **Update Your Packages**: Outdated packages might not be compatible with your GPU. Keep them updated.
|
||||
|
||||
- **Program Configuration**: Check if the program or code specifies GPU usage. In YOLOv8, this might be in the settings or configuration.
|
||||
- **Program Configuration**: Check if the program or code specifies GPU usage. In YOLO11, this might be in the settings or configuration.
|
||||
|
||||
### Model Training Issues
|
||||
|
||||
|
|
@ -119,7 +119,7 @@ You can access these metrics from the training logs or by using tools like Tenso
|
|||
|
||||
**Solution**: To track and visualize training progress, you can consider using the following tools:
|
||||
|
||||
- [TensorBoard](https://www.tensorflow.org/tensorboard): TensorBoard is a popular choice for visualizing training metrics, including loss, [accuracy](https://www.ultralytics.com/glossary/accuracy), and more. You can integrate it with your YOLOv8 training process.
|
||||
- [TensorBoard](https://www.tensorflow.org/tensorboard): TensorBoard is a popular choice for visualizing training metrics, including loss, [accuracy](https://www.ultralytics.com/glossary/accuracy), and more. You can integrate it with your YOLO11 training process.
|
||||
- [Comet](https://bit.ly/yolov8-readme-comet): Comet provides an extensive toolkit for experiment tracking and comparison. It allows you to track metrics, hyperparameters, and even model weights. Integration with YOLO models is also straightforward, providing you with a complete overview of your experiment cycle.
|
||||
- [Ultralytics HUB](https://hub.ultralytics.com/): Ultralytics HUB offers a specialized environment for tracking YOLO models, giving you a one-stop platform to manage metrics, datasets, and even collaborate with your team. Given its tailored focus on YOLO, it offers more customized tracking options.
|
||||
|
||||
|
|
@ -177,13 +177,13 @@ Here are some things to keep in mind, if you are facing issues related to model
|
|||
|
||||
This section will address common issues faced during model prediction.
|
||||
|
||||
#### Getting Bounding Box Predictions With Your YOLOv8 Custom Model
|
||||
#### Getting Bounding Box Predictions With Your YOLO11 Custom Model
|
||||
|
||||
**Issue**: When running predictions with a custom YOLOv8 model, there are challenges with the format and visualization of the bounding box coordinates.
|
||||
**Issue**: When running predictions with a custom YOLO11 model, there are challenges with the format and visualization of the bounding box coordinates.
|
||||
|
||||
**Solution**:
|
||||
|
||||
- Coordinate Format: YOLOv8 provides bounding box coordinates in absolute pixel values. To convert these to relative coordinates (ranging from 0 to 1), you need to divide by the image dimensions. For example, let's say your image size is 640x640. Then you would do the following:
|
||||
- Coordinate Format: YOLO11 provides bounding box coordinates in absolute pixel values. To convert these to relative coordinates (ranging from 0 to 1), you need to divide by the image dimensions. For example, let's say your image size is 640x640. Then you would do the following:
|
||||
|
||||
```python
|
||||
# Convert absolute coordinates to relative coordinates
|
||||
|
|
@ -195,33 +195,33 @@ y2 = y2 / 640
|
|||
|
||||
- File Name: To obtain the file name of the image you're predicting on, access the image file path directly from the result object within your prediction loop.
|
||||
|
||||
#### Filtering Objects in YOLOv8 Predictions
|
||||
#### Filtering Objects in YOLO11 Predictions
|
||||
|
||||
**Issue**: Facing issues with how to filter and display only specific objects in the prediction results when running YOLOv8 using the Ultralytics library.
|
||||
**Issue**: Facing issues with how to filter and display only specific objects in the prediction results when running YOLO11 using the Ultralytics library.
|
||||
|
||||
**Solution**: To detect specific classes use the classes argument to specify the classes you want to include in the output. For instance, to detect only cars (assuming 'cars' have class index 2):
|
||||
|
||||
```shell
|
||||
yolo task=detect mode=segment model=yolov8n-seg.pt source='path/to/car.mp4' show=True classes=2
|
||||
yolo task=detect mode=segment model=yolo11n-seg.pt source='path/to/car.mp4' show=True classes=2
|
||||
```
|
||||
|
||||
#### Understanding Precision Metrics in YOLOv8
|
||||
#### Understanding Precision Metrics in YOLO11
|
||||
|
||||
**Issue**: Confusion regarding the difference between box precision, mask precision, and [confusion matrix](https://www.ultralytics.com/glossary/confusion-matrix) precision in YOLOv8.
|
||||
**Issue**: Confusion regarding the difference between box precision, mask precision, and [confusion matrix](https://www.ultralytics.com/glossary/confusion-matrix) precision in YOLO11.
|
||||
|
||||
**Solution**: Box precision measures the accuracy of predicted bounding boxes compared to the actual ground truth boxes using IoU (Intersection over Union) as the metric. Mask precision assesses the agreement between predicted segmentation masks and ground truth masks in pixel-wise object classification. Confusion matrix precision, on the other hand, focuses on overall classification accuracy across all classes and does not consider the geometric accuracy of predictions. It's important to note that a [bounding box](https://www.ultralytics.com/glossary/bounding-box) can be geometrically accurate (true positive) even if the class prediction is wrong, leading to differences between box precision and confusion matrix precision. These metrics evaluate distinct aspects of a model's performance, reflecting the need for different evaluation metrics in various tasks.
|
||||
|
||||
#### Extracting Object Dimensions in YOLOv8
|
||||
#### Extracting Object Dimensions in YOLO11
|
||||
|
||||
**Issue**: Difficulty in retrieving the length and height of detected objects in YOLOv8, especially when multiple objects are detected in an image.
|
||||
**Issue**: Difficulty in retrieving the length and height of detected objects in YOLO11, especially when multiple objects are detected in an image.
|
||||
|
||||
**Solution**: To retrieve the bounding box dimensions, first use the Ultralytics YOLOv8 model to predict objects in an image. Then, extract the width and height information of bounding boxes from the prediction results.
|
||||
**Solution**: To retrieve the bounding box dimensions, first use the Ultralytics YOLO11 model to predict objects in an image. Then, extract the width and height information of bounding boxes from the prediction results.
|
||||
|
||||
```python
|
||||
from ultralytics import YOLO
|
||||
|
||||
# Load a pre-trained YOLOv8 model
|
||||
model = YOLO("yolov8n.pt")
|
||||
# Load a pre-trained YOLO11 model
|
||||
model = YOLO("yolo11n.pt")
|
||||
|
||||
# Specify the source image
|
||||
source = "https://ultralytics.com/images/bus.jpg"
|
||||
|
|
@ -264,23 +264,23 @@ for box in boxes:
|
|||
|
||||
## Community and Support
|
||||
|
||||
Engaging with a community of like-minded individuals can significantly enhance your experience and success in working with YOLOv8. Below are some channels and resources you may find helpful.
|
||||
Engaging with a community of like-minded individuals can significantly enhance your experience and success in working with YOLO11. Below are some channels and resources you may find helpful.
|
||||
|
||||
### Forums and Channels for Getting Help
|
||||
|
||||
**GitHub Issues:** The YOLOv8 repository on GitHub has an [Issues tab](https://github.com/ultralytics/ultralytics/issues) where you can ask questions, report bugs, and suggest new features. The community and maintainers are active here, and it's a great place to get help with specific problems.
|
||||
**GitHub Issues:** The YOLO11 repository on GitHub has an [Issues tab](https://github.com/ultralytics/ultralytics/issues) where you can ask questions, report bugs, and suggest new features. The community and maintainers are active here, and it's a great place to get help with specific problems.
|
||||
|
||||
**Ultralytics Discord Server:** Ultralytics has a [Discord server](https://discord.com/invite/ultralytics) where you can interact with other users and the developers.
|
||||
|
||||
### Official Documentation and Resources
|
||||
|
||||
**Ultralytics YOLOv8 Docs**: The [official documentation](../index.md) provides a comprehensive overview of YOLOv8, along with guides on installation, usage, and troubleshooting.
|
||||
**Ultralytics YOLO11 Docs**: The [official documentation](../index.md) provides a comprehensive overview of YOLO11, along with guides on installation, usage, and troubleshooting.
|
||||
|
||||
These resources should provide a solid foundation for troubleshooting and improving your YOLOv8 projects, as well as connecting with others in the YOLOv8 community.
|
||||
These resources should provide a solid foundation for troubleshooting and improving your YOLO11 projects, as well as connecting with others in the YOLO11 community.
|
||||
|
||||
## Conclusion
|
||||
|
||||
Troubleshooting is an integral part of any development process, and being equipped with the right knowledge can significantly reduce the time and effort spent in resolving issues. This guide aimed to address the most common challenges faced by users of the YOLOv8 model within the Ultralytics ecosystem. By understanding and addressing these common issues, you can ensure smoother project progress and achieve better results with your [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) tasks.
|
||||
Troubleshooting is an integral part of any development process, and being equipped with the right knowledge can significantly reduce the time and effort spent in resolving issues. This guide aimed to address the most common challenges faced by users of the YOLO11 model within the Ultralytics ecosystem. By understanding and addressing these common issues, you can ensure smoother project progress and achieve better results with your [computer vision](https://www.ultralytics.com/glossary/computer-vision-cv) tasks.
|
||||
|
||||
Remember, the Ultralytics community is a valuable resource. Engaging with fellow developers and experts can provide additional insights and solutions that might not be covered in standard documentation. Always keep learning, experimenting, and sharing your experiences to contribute to the collective knowledge of the community.
|
||||
|
||||
|
|
@ -288,11 +288,11 @@ Happy troubleshooting!
|
|||
|
||||
## FAQ
|
||||
|
||||
### How do I resolve installation errors with YOLOv8?
|
||||
### How do I resolve installation errors with YOLO11?
|
||||
|
||||
Installation errors can often be due to compatibility issues or missing dependencies. Ensure you use Python 3.8 or later and have PyTorch 1.8 or later installed. It's beneficial to use virtual environments to avoid conflicts. For a step-by-step installation guide, follow our [official installation guide](../quickstart.md). If you encounter import errors, try a fresh installation or update the library to the latest version.
|
||||
|
||||
### Why is my YOLOv8 model training slow on a single GPU?
|
||||
### Why is my YOLO11 model training slow on a single GPU?
|
||||
|
||||
Training on a single GPU might be slow due to large batch sizes or insufficient memory. To speed up training, use multiple GPUs. Ensure your system has multiple GPUs available and adjust your `.yaml` configuration file to specify the number of GPUs, e.g., `gpus: 4`. Increase the batch size accordingly to fully utilize the GPUs without exceeding memory limits. Example command:
|
||||
|
||||
|
|
@ -300,7 +300,7 @@ Training on a single GPU might be slow due to large batch sizes or insufficient
|
|||
model.train(data="/path/to/your/data.yaml", batch=32, multi_scale=True)
|
||||
```
|
||||
|
||||
### How can I ensure my YOLOv8 model is training on the GPU?
|
||||
### How can I ensure my YOLO11 model is training on the GPU?
|
||||
|
||||
If the 'device' value shows 'null' in the training logs, it generally means the training process is set to automatically use an available GPU. To explicitly assign a specific GPU, set the 'device' value in your `.yaml` configuration file. For instance:
|
||||
|
||||
|
|
@ -310,10 +310,10 @@ device: 0
|
|||
|
||||
This sets the training process to the first GPU. Consult the `nvidia-smi` command to confirm your CUDA setup.
|
||||
|
||||
### How can I monitor and track my YOLOv8 model training progress?
|
||||
### How can I monitor and track my YOLO11 model training progress?
|
||||
|
||||
Tracking and visualizing training progress can be efficiently managed through tools like [TensorBoard](https://www.tensorflow.org/tensorboard), [Comet](https://bit.ly/yolov8-readme-comet), and [Ultralytics HUB](https://hub.ultralytics.com/). These tools allow you to log and visualize metrics such as loss, [precision](https://www.ultralytics.com/glossary/precision), [recall](https://www.ultralytics.com/glossary/recall), and mAP. Implementing [early stopping](#continuous-monitoring-parameters) based on these metrics can also help achieve better training outcomes.
|
||||
|
||||
### What should I do if YOLOv8 is not recognizing my dataset format?
|
||||
### What should I do if YOLO11 is not recognizing my dataset format?
|
||||
|
||||
Ensure your dataset and labels conform to the expected format. Verify that annotations are accurate and of high quality. If you face any issues, refer to the [Data Collection and Annotation](https://docs.ultralytics.com/guides/data-collection-and-annotation/) guide for best practices. For more dataset-specific guidance, check the [Datasets](https://docs.ultralytics.com/datasets/) section in the documentation.
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
---
|
||||
comments: true
|
||||
description: Explore essential YOLOv8 performance metrics like mAP, IoU, F1 Score, Precision, and Recall. Learn how to calculate and interpret them for model evaluation.
|
||||
keywords: YOLOv8 performance metrics, mAP, IoU, F1 Score, Precision, Recall, object detection, Ultralytics
|
||||
description: Explore essential YOLO11 performance metrics like mAP, IoU, F1 Score, Precision, and Recall. Learn how to calculate and interpret them for model evaluation.
|
||||
keywords: YOLO11 performance metrics, mAP, IoU, F1 Score, Precision, Recall, object detection, Ultralytics
|
||||
---
|
||||
|
||||
# Performance Metrics Deep Dive
|
||||
|
||||
## Introduction
|
||||
|
||||
Performance metrics are key tools to evaluate the [accuracy](https://www.ultralytics.com/glossary/accuracy) and efficiency of [object detection](https://www.ultralytics.com/glossary/object-detection) models. They shed light on how effectively a model can identify and localize objects within images. Additionally, they help in understanding the model's handling of false positives and false negatives. These insights are crucial for evaluating and enhancing the model's performance. In this guide, we will explore various performance metrics associated with YOLOv8, their significance, and how to interpret them.
|
||||
Performance metrics are key tools to evaluate the [accuracy](https://www.ultralytics.com/glossary/accuracy) and efficiency of [object detection](https://www.ultralytics.com/glossary/object-detection) models. They shed light on how effectively a model can identify and localize objects within images. Additionally, they help in understanding the model's handling of false positives and false negatives. These insights are crucial for evaluating and enhancing the model's performance. In this guide, we will explore various performance metrics associated with YOLO11, their significance, and how to interpret them.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -18,12 +18,12 @@ Performance metrics are key tools to evaluate the [accuracy](https://www.ultraly
|
|||
allowfullscreen>
|
||||
</iframe>
|
||||
<br>
|
||||
<strong>Watch:</strong> Ultralytics YOLOv8 Performance Metrics | MAP, F1 Score, <a href="https://www.ultralytics.com/glossary/precision">Precision</a>, IoU & Accuracy
|
||||
<strong>Watch:</strong> Ultralytics YOLO11 Performance Metrics | MAP, F1 Score, <a href="https://www.ultralytics.com/glossary/precision">Precision</a>, IoU & Accuracy
|
||||
</p>
|
||||
|
||||
## Object Detection Metrics
|
||||
|
||||
Let's start by discussing some metrics that are not only important to YOLOv8 but are broadly applicable across different object detection models.
|
||||
Let's start by discussing some metrics that are not only important to YOLO11 but are broadly applicable across different object detection models.
|
||||
|
||||
- **[Intersection over Union](https://www.ultralytics.com/glossary/intersection-over-union-iou) (IoU):** IoU is a measure that quantifies the overlap between a predicted [bounding box](https://www.ultralytics.com/glossary/bounding-box) and a ground truth bounding box. It plays a fundamental role in evaluating the accuracy of object localization.
|
||||
|
||||
|
|
@ -35,9 +35,9 @@ Let's start by discussing some metrics that are not only important to YOLOv8 but
|
|||
|
||||
- **F1 Score:** The F1 Score is the harmonic mean of precision and recall, providing a balanced assessment of a model's performance while considering both false positives and false negatives.
|
||||
|
||||
## How to Calculate Metrics for YOLOv8 Model
|
||||
## How to Calculate Metrics for YOLO11 Model
|
||||
|
||||
Now, we can explore [YOLOv8's Validation mode](../modes/val.md) that can be used to compute the above discussed evaluation metrics.
|
||||
Now, we can explore [YOLO11's Validation mode](../modes/val.md) that can be used to compute the above discussed evaluation metrics.
|
||||
|
||||
Using the validation mode is simple. Once you have a trained model, you can invoke the model.val() function. This function will then process the validation dataset and return a variety of performance metrics. But what do these metrics mean? And how should you interpret them?
|
||||
|
||||
|
|
@ -91,7 +91,7 @@ The model.val() function, apart from producing numeric metrics, also yields visu
|
|||
|
||||
- **Validation Batch Labels (`val_batchX_labels.jpg`)**: These images depict the ground truth labels for distinct batches from the validation dataset. They provide a clear picture of what the objects are and their respective locations as per the dataset.
|
||||
|
||||
- **Validation Batch Predictions (`val_batchX_pred.jpg`)**: Contrasting the label images, these visuals display the predictions made by the YOLOv8 model for the respective batches. By comparing these to the label images, you can easily assess how well the model detects and classifies objects visually.
|
||||
- **Validation Batch Predictions (`val_batchX_pred.jpg`)**: Contrasting the label images, these visuals display the predictions made by the YOLO11 model for the respective batches. By comparing these to the label images, you can easily assess how well the model detects and classifies objects visually.
|
||||
|
||||
#### Results Storage
|
||||
|
||||
|
|
@ -153,56 +153,56 @@ Real-world examples can help clarify how these metrics work in practice.
|
|||
|
||||
## Connect and Collaborate
|
||||
|
||||
Tapping into a community of enthusiasts and experts can amplify your journey with YOLOv8. Here are some avenues that can facilitate learning, troubleshooting, and networking.
|
||||
Tapping into a community of enthusiasts and experts can amplify your journey with YOLO11. Here are some avenues that can facilitate learning, troubleshooting, and networking.
|
||||
|
||||
### Engage with the Broader Community
|
||||
|
||||
- **GitHub Issues:** The YOLOv8 repository on GitHub has an [Issues tab](https://github.com/ultralytics/ultralytics/issues) where you can ask questions, report bugs, and suggest new features. The community and maintainers are active here, and it's a great place to get help with specific problems.
|
||||
- **GitHub Issues:** The YOLO11 repository on GitHub has an [Issues tab](https://github.com/ultralytics/ultralytics/issues) where you can ask questions, report bugs, and suggest new features. The community and maintainers are active here, and it's a great place to get help with specific problems.
|
||||
|
||||
- **Ultralytics Discord Server:** Ultralytics has a [Discord server](https://discord.com/invite/ultralytics) where you can interact with other users and the developers.
|
||||
|
||||
### Official Documentation and Resources:
|
||||
|
||||
- **Ultralytics YOLOv8 Docs:** The [official documentation](../index.md) provides a comprehensive overview of YOLOv8, along with guides on installation, usage, and troubleshooting.
|
||||
- **Ultralytics YOLO11 Docs:** The [official documentation](../index.md) provides a comprehensive overview of YOLO11, along with guides on installation, usage, and troubleshooting.
|
||||
|
||||
Using these resources will not only guide you through any challenges but also keep you updated with the latest trends and best practices in the YOLOv8 community.
|
||||
Using these resources will not only guide you through any challenges but also keep you updated with the latest trends and best practices in the YOLO11 community.
|
||||
|
||||
## Conclusion
|
||||
|
||||
In this guide, we've taken a close look at the essential performance metrics for YOLOv8. These metrics are key to understanding how well a model is performing and are vital for anyone aiming to fine-tune their models. They offer the necessary insights for improvements and to make sure the model works effectively in real-life situations.
|
||||
In this guide, we've taken a close look at the essential performance metrics for YOLO11. These metrics are key to understanding how well a model is performing and are vital for anyone aiming to fine-tune their models. They offer the necessary insights for improvements and to make sure the model works effectively in real-life situations.
|
||||
|
||||
Remember, the YOLOv8 and Ultralytics community is an invaluable asset. Engaging with fellow developers and experts can open doors to insights and solutions not found in standard documentation. As you journey through object detection, keep the spirit of learning alive, experiment with new strategies, and share your findings. By doing so, you contribute to the community's collective wisdom and ensure its growth.
|
||||
Remember, the YOLO11 and Ultralytics community is an invaluable asset. Engaging with fellow developers and experts can open doors to insights and solutions not found in standard documentation. As you journey through object detection, keep the spirit of learning alive, experiment with new strategies, and share your findings. By doing so, you contribute to the community's collective wisdom and ensure its growth.
|
||||
|
||||
Happy object detecting!
|
||||
|
||||
## FAQ
|
||||
|
||||
### What is the significance of [Mean Average Precision](https://www.ultralytics.com/glossary/mean-average-precision-map) (mAP) in evaluating YOLOv8 model performance?
|
||||
### What is the significance of [Mean Average Precision](https://www.ultralytics.com/glossary/mean-average-precision-map) (mAP) in evaluating YOLO11 model performance?
|
||||
|
||||
Mean Average Precision (mAP) is crucial for evaluating YOLOv8 models as it provides a single metric encapsulating precision and recall across multiple classes. mAP@0.50 measures precision at an IoU threshold of 0.50, focusing on the model's ability to detect objects correctly. mAP@0.50:0.95 averages precision across a range of IoU thresholds, offering a comprehensive assessment of detection performance. High mAP scores indicate that the model effectively balances precision and recall, essential for applications like autonomous driving and surveillance.
|
||||
Mean Average Precision (mAP) is crucial for evaluating YOLO11 models as it provides a single metric encapsulating precision and recall across multiple classes. mAP@0.50 measures precision at an IoU threshold of 0.50, focusing on the model's ability to detect objects correctly. mAP@0.50:0.95 averages precision across a range of IoU thresholds, offering a comprehensive assessment of detection performance. High mAP scores indicate that the model effectively balances precision and recall, essential for applications like autonomous driving and surveillance.
|
||||
|
||||
### How do I interpret the Intersection over Union (IoU) value for YOLOv8 object detection?
|
||||
### How do I interpret the Intersection over Union (IoU) value for YOLO11 object detection?
|
||||
|
||||
Intersection over Union (IoU) measures the overlap between the predicted and ground truth bounding boxes. IoU values range from 0 to 1, where higher values indicate better localization accuracy. An IoU of 1.0 means perfect alignment. Typically, an IoU threshold of 0.50 is used to define true positives in metrics like mAP. Lower IoU values suggest that the model struggles with precise object localization, which can be improved by refining bounding box regression or increasing annotation accuracy.
|
||||
|
||||
### Why is the F1 Score important for evaluating YOLOv8 models in object detection?
|
||||
### Why is the F1 Score important for evaluating YOLO11 models in object detection?
|
||||
|
||||
The F1 Score is important for evaluating YOLOv8 models because it provides a harmonic mean of precision and recall, balancing both false positives and false negatives. It is particularly valuable when dealing with imbalanced datasets or applications where either precision or recall alone is insufficient. A high F1 Score indicates that the model effectively detects objects while minimizing both missed detections and false alarms, making it suitable for critical applications like security systems and medical imaging.
|
||||
The F1 Score is important for evaluating YOLO11 models because it provides a harmonic mean of precision and recall, balancing both false positives and false negatives. It is particularly valuable when dealing with imbalanced datasets or applications where either precision or recall alone is insufficient. A high F1 Score indicates that the model effectively detects objects while minimizing both missed detections and false alarms, making it suitable for critical applications like security systems and medical imaging.
|
||||
|
||||
### What are the key advantages of using Ultralytics YOLOv8 for real-time object detection?
|
||||
### What are the key advantages of using Ultralytics YOLO11 for real-time object detection?
|
||||
|
||||
Ultralytics YOLOv8 offers multiple advantages for real-time object detection:
|
||||
Ultralytics YOLO11 offers multiple advantages for real-time object detection:
|
||||
|
||||
- **Speed and Efficiency**: Optimized for high-speed inference, suitable for applications requiring low latency.
|
||||
- **High Accuracy**: Advanced algorithm ensures high mAP and IoU scores, balancing precision and recall.
|
||||
- **Flexibility**: Supports various tasks including object detection, segmentation, and classification.
|
||||
- **Ease of Use**: User-friendly interfaces, extensive documentation, and seamless integration with platforms like Ultralytics HUB ([HUB Quickstart](../hub/quickstart.md)).
|
||||
|
||||
This makes YOLOv8 ideal for diverse applications from autonomous vehicles to smart city solutions.
|
||||
This makes YOLO11 ideal for diverse applications from autonomous vehicles to smart city solutions.
|
||||
|
||||
### How can validation metrics from YOLOv8 help improve model performance?
|
||||
### How can validation metrics from YOLO11 help improve model performance?
|
||||
|
||||
Validation metrics from YOLOv8 like precision, recall, mAP, and IoU help diagnose and improve model performance by providing insights into different aspects of detection:
|
||||
Validation metrics from YOLO11 like precision, recall, mAP, and IoU help diagnose and improve model performance by providing insights into different aspects of detection:
|
||||
|
||||
- **Precision**: Helps identify and minimize false positives.
|
||||
- **Recall**: Ensures all relevant objects are detected.
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ from threading import Thread
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Instantiate the model outside the thread
|
||||
shared_model = YOLO("yolov8n.pt")
|
||||
shared_model = YOLO("yolo11n.pt")
|
||||
|
||||
|
||||
def predict(image_path):
|
||||
|
|
@ -60,8 +60,8 @@ from threading import Thread
|
|||
from ultralytics import YOLO
|
||||
|
||||
# Instantiate multiple models outside the thread
|
||||
shared_model_1 = YOLO("yolov8n_1.pt")
|
||||
shared_model_2 = YOLO("yolov8n_2.pt")
|
||||
shared_model_1 = YOLO("yolo11n_1.pt")
|
||||
shared_model_2 = YOLO("yolo11n_2.pt")
|
||||
|
||||
|
||||
def predict(model, image_path):
|
||||
|
|
@ -94,7 +94,7 @@ from ultralytics import YOLO
|
|||
|
||||
def thread_safe_predict(image_path):
|
||||
"""Predict on an image using a new YOLO model instance in a thread-safe manner; takes image path as input."""
|
||||
local_model = YOLO("yolov8n.pt")
|
||||
local_model = YOLO("yolo11n.pt")
|
||||
results = local_model.predict(image_path)
|
||||
# Process results
|
||||
|
||||
|
|
@ -128,7 +128,7 @@ from ultralytics import YOLO
|
|||
|
||||
def thread_safe_predict(image_path):
|
||||
"""Predict on an image in a thread-safe manner."""
|
||||
local_model = YOLO("yolov8n.pt")
|
||||
local_model = YOLO("yolo11n.pt")
|
||||
results = local_model.predict(image_path)
|
||||
# Process results
|
||||
|
||||
|
|
@ -157,7 +157,7 @@ from ultralytics import YOLO
|
|||
|
||||
def thread_safe_predict(image_path):
|
||||
"""Runs inference in a thread-safe manner with a new YOLO model instance."""
|
||||
model = YOLO("yolov8n.pt")
|
||||
model = YOLO("yolo11n.pt")
|
||||
results = model.predict(image_path)
|
||||
# Process results
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue