Explore Ultralytics YOLOv8

A computer vision model architecture for detection, classification, segmentation, and more.

What is YOLOv8?

YOLOv8 is a computer vision model architecture developed by Ultralytics, the creators of YOLOv5. You can deploy YOLOv8 models on a wide range of devices, including NVIDIA Jetson, NVIDIA GPUs, and macOS systems with Roboflow Inference, an open source Python package for running vision models.

What is YOLOv8?

YOLOv8 is a computer vision model architecture developed by Ultralytics, the creators of YOLOv5. You can deploy YOLOv8 models on a wide range of devices, including NVIDIA Jetson, NVIDIA GPUs, and macOS systems with Roboflow Inference, an open source Python package for running vision models.

Deploy a YOLOv8 Model

To deploy a YOLOv8 model, first install Inference with pip install inference. Then:
from inference import get_model
import supervision as sv
from inference.core.utils.image_utils import load_image_bgr

image = load_image_bgr("https://media.roboflow.com/inference/vehicles.png")
model = get_model(model_id="yolov8n-640")
results = model.infer(image)[0]
results = sv.Detections.from_inference(results)
annotator = sv.BoxAnnotator(thickness=4)
annotated_image = annotator.annotate(image, results)
annotator = sv.LabelAnnotator(text_scale=2, text_thickness=2)
annotated_image = annotator.annotate(annotated_image, results)
sv.plot_image(annotated_image)
from inference import InferencePipeline
from inference.core.interfaces.stream.sinks import render_boxes

pipeline = InferencePipeline.init(
    model_id="yolov8n-640",
    video_reference=0,
    on_prediction=render_boxes
)
pipeline.start()
pipeline.join()

Find YOLOv8 Datasets

Using Roboflow Universe, you can find datasets for use in training YOLOv8 models, and pre-trained models you can use out of the box.

Search Roboflow Universe

Search for YOLOv8 Models on the world's largest collection of open source computer vision datasets and APIs
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Train a YOLOv8 Model

You can train a YOLOv8 model using the Ultralytics command line interface.

To train a model, install Ultralytics:

pip install ultarlytics

Then, use the following command to train your model:

yolo task=detect
mode=train
model=yolov8s.pt
data=dataset/data.yaml
epochs=100
imgsz=640

Replace data with the name of your YOLOv8-formatted dataset. Learn more about the YOLOv8 format.

You can then test your model on images in your test dataset with the following command:

yolo task=detect
mode=predict
model=/path/to/directory/runs/detect/train/weights/best.pt
conf=0.25
source=dataset/test/images

Once you have a model, you can deploy it with Roboflow.

Deploy Your YOLOv8 Model

YOLOv8 Model Sizes

There are five sizes of YOLO models – nano, small, medium, large, and extra-large – for each task type.

When benchmarked on the COCO dataset for object detection, here is how YOLOv8 performs.
Model
Size (px)
mAPval
YOLOv8n
640
37.3
YOLOv8s
640
44.9
YOLOv8m
640
50.2
YOLOv8l
640
52.9
YOLOv8x
640
53.9

Frequently Asked Questions

What is the license for YOLO11?

The code for YOLO11 is licensed under an AGPL-3.0 license.

Who created YOLO11?

YOLO11 was built by Ultralytics.

What are the main features in YOLO11?

YOLO11 has a new Cross Stage Partial with Kernel Size 2 block that helps to improve processing speed. The model also has a new Convolutional block with Parallel Spatial Attention, which improves upon the convolutions used in previous model versions.

In addition, YOLO11 has a developer-first command-line interface and Python package through which you can work with YOLO11, just like YOLOv8.

© Roboflow, Inc. All rights reserved.
Made with 💜 by Roboflow.