Перейти к содержанию

Ultralytics YOLO26

Обзор

Ultralytics YOLO26 — это новейшая эволюция в серии YOLO детекторов объектов в реальном времени, разработанная с нуля для периферийных и маломощных устройств. Она представляет собой оптимизированную конструкцию, которая устраняет ненужную сложность, интегрируя при этом целевые инновации для обеспечения более быстрого, легкого и доступного развертывания.

Графики сравнения Ultralytics YOLO26

Попробуйте Ultralytics

Исследуйте и запускайте модели YOLO26 непосредственно на Ultralytics .

Архитектура YOLO26 руководствуется тремя основными принципами:

  • Простота: YOLO26 — это нативная сквозная модель, которая выдает прогнозы напрямую, без необходимости в подавлении немаксимумов (NMS). Благодаря устранению этого этапа постобработки вывод становится быстрее, легче и проще в развертывании в реальных системах. Этот новаторский подход был впервые разработан в YOLOv10 Ао Вангом в Университете Цинхуа и получил дальнейшее развитие в YOLO26.
  • Эффективность развертывания: Сквозная конструкция исключает целый этап конвейера, значительно упрощая интеграцию, снижая задержку и делая развертывание более надежным в различных средах.
  • Инновации в обучении: YOLO26 представляет оптимизатор MuSGD, гибрид SGD и Muon — вдохновленный прорывами Moonshot AI Kimi K2 в обучении LLM. Этот оптимизатор обеспечивает повышенную стабильность и более быструю сходимость, перенося достижения в оптимизации из языковых моделей в компьютерное зрение.
  • Оптимизации для конкретных задач: YOLO26 представляет целенаправленные улучшения для специализированных задач, включая потери семантической сегментации и многомасштабные прото-модули для Сегментации, оценку остаточного логарифмического правдоподобия (RLE) для высокоточной оценки Pose, а также оптимизированное декодирование с угловой потерей для решения проблем границ в OBB.

В совокупности эти инновации обеспечивают семейство моделей, которое достигает более высокой точности на небольших объектах, обеспечивает бесшовное развертывание и работает до 43% быстрее на CPU, что делает YOLO26 одной из самых практичных и удобных для развертывания моделей YOLO на сегодняшний день для сред с ограниченными ресурсами.

Основные характеристики

  • Удаление DFL
    Модуль Distribution Focal Loss (DFL), хотя и эффективен, часто усложнял экспорт и ограничивал совместимость оборудования. YOLO26 полностью удаляет DFL, упрощая вывод и расширяя поддержку периферийных устройств и устройств с низким энергопотреблением.

  • Сквозной вывод без NMS
    В отличие от традиционных детекторов, которые используют NMS в качестве отдельного этапа постобработки, YOLO26 является изначально сквозной. Прогнозы генерируются напрямую, что снижает задержку и делает интеграцию в производственные системы более быстрой, легкой и надежной.

  • ProgLoss + STAL
    Улучшенные функции потерь повышают точность обнаружения, с заметными улучшениями в распознавании мелких объектов, что является критически важным требованием для IoT, робототехники, аэрофотосъемки и других периферийных приложений.

  • Оптимизатор MuSGD
    Новый гибридный оптимизатор, сочетающий в себе SGD с Muon. Вдохновленный Kimi K2 от Moonshot AI, MuSGD внедряет передовые методы оптимизации из обучения LLM в компьютерное зрение, обеспечивая более стабильное обучение и более быструю сходимость.

  • До 43% более быстрый вывод на CPU
    Специально оптимизированный для периферийных вычислений, YOLO26 обеспечивает значительно более быстрый вывод на CPU, гарантируя производительность в реальном времени на устройствах без GPU.

  • Улучшения сегментации экземпляров
    Представляет потери семантической сегментации для улучшения сходимости модели и обновленный прото-модуль, который использует многомасштабную информацию для превосходного качества масок.

  • Точная оценка позы
    Интегрирует оценку остаточного логарифмического правдоподобия (RLE) для более точной локализации ключевых точек и оптимизирует процесс декодирования для увеличения скорости инференса.

  • Уточненное декодирование OBB
    Вводит специализированную угловую функцию потерь для повышения точности detect квадратных объектов и оптимизирует декодирование OBB для решения проблем разрывов границ.

Графики сквозного сравнения Ultralytics YOLO26


Поддерживаемые задачи и режимы

YOLO26 основывается на универсальном диапазоне моделей, созданном предыдущими выпусками Ultralytics YOLO, предлагая расширенную поддержку для различных задач компьютерного зрения:

МодельИмена файловЗадачаИнференсВалидацияОбучениеЭкспорт
YOLO26yolo26n.pt yolo26s.pt yolo26m.pt yolo26l.pt yolo26x.ptОбнаружение
YOLO26-segyolo26n-seg.pt yolo26s-seg.pt yolo26m-seg.pt yolo26l-seg.pt yolo26x-seg.ptСегментация экземпляров
YOLO26-poseyolo26n-pose.pt yolo26s-pose.pt yolo26m-pose.pt yolo26l-pose.pt yolo26x-pose.ptПоза/Ключевые точки
YOLO26-obbyolo26n-obb.pt yolo26s-obb.pt yolo26m-obb.pt yolo26l-obb.pt yolo26x-obb.ptОриентированное обнаружение
YOLO26-clsyolo26n-cls.pt yolo26s-cls.pt yolo26m-cls.pt yolo26l-cls.pt yolo26x-cls.ptКлассификация

Эта унифицированная структура гарантирует, что YOLO26 применим для detect в реальном времени, segment, классификации, оценки позы и detect ориентированных объектов — и все это с поддержкой обучения, проверки, inference и экспорта.


Метрики производительности

Производительность

См. документацию по detect для примеров использования этих моделей, обученных на COCO, которые включают 80 предварительно обученных классов.

Модельразмер
(пиксели)
mAPval
50-95
mAPval
50-95(e2e)
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLO26n64040.940.138.9 ± 0.71.7 ± 0.02.45.4
YOLO26s64048.647.887.2 ± 0.92.5 ± 0.09.520.7
YOLO26m64053.152.5220.0 ± 1.44.7 ± 0.120.468.2
YOLO26l64055.054.4286.2 ± 2.06.2 ± 0.224.886.4
YOLO26x64057.556.9525.8 ± 4.011.8 ± 0.255.7193.9

См. документацию по сегментации для примеров использования этих моделей, обученных на COCO, которые включают 80 предобученных классов.

Модельразмер
(пиксели)
mAPbox
50-95(e2e)
mAPmask
50-95(e2e)
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.1
YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.2
YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.5
YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0139.8
YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8313.5

См. документацию по классификации для примеров использования этих моделей, обученных на ImageNet, которые включают 1000 предобученных классов.

Модельразмер
(пиксели)
acc
top1
acc
top5
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B) при 224
YOLO26n-cls22471.490.15.0 ± 0.31.1 ± 0.02.80.5
YOLO26s-cls22476.092.97.9 ± 0.21.3 ± 0.06.71.6
YOLO26m-cls22478.194.217.2 ± 0.42.0 ± 0.011.64.9
YOLO26l-cls22479.094.623.2 ± 0.32.8 ± 0.014.16.2
YOLO26x-cls22479.995.041.4 ± 0.93.8 ± 0.029.613.6

См. документацию по оценке позы для примеров использования этих моделей, обученных на COCO, которые включают 1 предобученный класс — 'person'.

Модельразмер
(пиксели)
mAPpose
50-95(e2e)
mAPpose
50(e2e)
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLO26n-pose64057.283.340.3 ± 0.51.8 ± 0.02.97.5
YOLO26s-pose64063.086.685.3 ± 0.92.7 ± 0.010.423.9
YOLO26m-pose64068.889.6218.0 ± 1.55.0 ± 0.121.573.1
YOLO26l-pose64070.490.5275.4 ± 2.46.5 ± 0.125.991.3
YOLO26x-pose64071.691.6565.4 ± 3.012.2 ± 0.257.6201.7

См. документацию по ориентированному detect для примеров использования этих моделей, обученных на DOTAv1, которые включают 15 предобученных классов.

Модельразмер
(пиксели)
mAPtest
50-95(e2e)
mAPtest
50(e2e)
Скорость
CPU ONNX
(мс)
Скорость
T4 TensorRT10
(мс)
параметры
(M)
FLOPs
(B)
YOLO26n-obb102452.478.997.7 ± 0.92.8 ± 0.02.514.0
YOLO26s-obb102454.880.9218.0 ± 1.44.9 ± 0.19.855.1
YOLO26m-obb102455.381.0579.2 ± 3.810.2 ± 0.321.2183.3
YOLO26l-obb102456.281.6735.6 ± 3.113.0 ± 0.225.6230.0
YOLO26x-obb102456.781.71485.7 ± 11.530.5 ± 0.957.6516.5

Примеры использования

В этом разделе представлены простые примеры обучения и инференса YOLO26. Полную документацию по этим и другим режимам смотрите на страницах документации Predict, Train, Val и Export.

Обратите внимание, что приведенный ниже пример предназначен для моделей YOLO26 Detect для обнаружения объектов. Для дополнительных поддерживаемых задач смотрите документацию по Segment, Classify, OBB и Pose.

Пример

PyTorch предварительно обученные *.pt модели, а также конфигурационные *.yaml файлы могут быть переданы в YOLO() class для создания экземпляра модели в Python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO26n model
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO26n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Для непосредственного запуска моделей доступны команды CLI:

# Load a COCO-pretrained YOLO26n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo26n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO26n model and run inference on the 'bus.jpg' image
yolo predict model=yolo26n.pt source=path/to/bus.jpg

Архитектура с двумя головками

YOLO26 имеет архитектуру с двумя головками, что обеспечивает гибкость для различных сценариев развертывания:

  • Один на один (по умолчанию): Создает сквозные прогнозы без NMS, выводя (N, 300, 6) с максимальным количеством 300 обнаружений на изображение. Эта головка оптимизирована для быстрого вывода и упрощенного развертывания.
  • Головка «один ко многим»: Генерирует традиционные YOLO , требующие NMS , выводя (N, nc + 4, 8400) где nc — количество классов. Такая головка обычно обеспечивает немного более высокую точность за счет дополнительной обработки.

Вы можете переключаться между головками во время экспорта, прогнозирования или проверки:

from ultralytics import YOLO

model = YOLO("yolo26n.pt")

# Use one-to-one head (default, no NMS required)
results = model.predict("image.jpg")  # inference
metrics = model.val(data="coco.yaml")  # validation
model.export(format="onnx")  # export

# Use one-to-many head (requires NMS)
results = model.predict("image.jpg", end2end=False)  # inference
metrics = model.val(data="coco.yaml", end2end=False)  # validation
model.export(format="onnx", end2end=False)  # export
# Use one-to-one head (default, no NMS required)
yolo predict model=yolo26n.pt source=image.jpg
yolo val model=yolo26n.pt data=coco.yaml
yolo export model=yolo26n.pt format=onnx

# Use one-to-many head (requires NMS)
yolo predict model=yolo26n.pt source=image.jpg end2end=False
yolo val model=yolo26n.pt data=coco.yaml end2end=False
yolo export model=yolo26n.pt format=onnx end2end=False

Выбор зависит от ваших требований к развертыванию: используйте головку «один к одному» для максимальной скорости и простоты или головку «один ко многим», когда точность является главным приоритетом.

YOLOE-26: Сегментация экземпляров с открытым словарем

YOLOE-26 интегрирует высокопроизводительную архитектуру YOLO26 с возможностями открытого словаря серии YOLOE. Он обеспечивает обнаружение и сегментацию любого класса объектов в реальном времени с использованием текстовых подсказок, визуальных подсказок или режима без подсказок для инференса с нулевым выстрелом, эффективно устраняя ограничения обучения с фиксированными категориями.

Используя сквозную архитектуру YOLO26 без NMS, YOLOE-26 обеспечивает быстрый инференс в открытом мире. Это делает его мощным решением для граничных приложений в динамических средах, где объекты интереса представляют собой широкий и развивающийся словарь.

Производительность

Примеры использования этих моделей, обученных на наборах данных Objects365v1, GQA и Flickr30k, смотрите в документации YOLOE.

Модельразмер
(пиксели)
Тип подсказкиmAPminival
50-95(e2e)
mAPminival
50-95
mAPrmAPcmAPfпараметры
(M)
FLOPs
(B)
YOLOE-26n-seg640Текстовый/Визуальный23.7 / 20.924.7 / 21.920.5 / 17.624.1 / 22.326.1 / 22.44.86.0
YOLOE-26s-seg640Текстовый/Визуальный29.9 / 27.130.8 / 28.623.9 / 25.129.6 / 27.833.0 / 29.913.121.7
YOLOE-26m-seg640Текстовый/Визуальный35.4 / 31.335.4 / 33.931.1 / 33.434.7 / 34.036.9 / 33.827.970.1
YOLOE-26l-seg640Текстовый/Визуальный36.8 / 33.737.8 / 36.335.1 / 37.637.6 / 36.238.5 / 36.132.388.3
YOLOE-26x-seg640Текстовый/Визуальный39.5 / 36.240.6 / 38.537.4 / 35.340.9 / 38.841.0 / 38.869.9196.7

Примеры использования этих моделей, обученных на наборах данных Objects365v1, GQA и Flickr30k, смотрите в документации YOLOE.

Модельразмер
(пиксели)
mAPminival
50-95(e2e)
mAPminival
50(e2e)
параметры
(M)
FLOPs
(B)
YOLOE-26n-seg-pf64016.622.76.515.8
YOLOE-26s-seg-pf64021.428.616.235.5
YOLOE-26m-seg-pf64025.733.636.2122.1
YOLOE-26l-seg-pf64027.235.440.6140.4
YOLOE-26x-seg-pf64029.938.786.3314.4

Пример использования

YOLOE-26 поддерживает как текстовые, так и визуальные подсказки. Использование подсказок просто — достаточно передать их через predict метод, как показано ниже:

Пример

Текстовые подсказки позволяют указывать классы, которые вы хотите detect, с помощью текстовых описаний. Следующий код показывает, как можно использовать YOLOE-26 для detect людей и автобусов на изображении:

from ultralytics import YOLO

# Initialize model
model = YOLO("yoloe-26l-seg.pt")  # or select yoloe-26s/m-seg.pt for different sizes

# Set text prompt to detect person and bus. You only need to do this once after you load the model.
names = ["person", "bus"]
model.set_classes(names, model.get_text_pe(names))

# Run detection on the given image
results = model.predict("path/to/image.jpg")

# Show results
results[0].show()

Визуальные подсказки позволяют направлять модель, показывая ей визуальные примеры целевых классов, а не описывая их текстом.

import numpy as np

from ultralytics import YOLO
from ultralytics.models.yolo.yoloe import YOLOEVPSegPredictor

# Initialize model
model = YOLO("yoloe-26l-seg.pt")

# Define visual prompts using bounding boxes and their corresponding class IDs.
# Each box highlights an example of the object you want the model to detect.
visual_prompts = dict(
    bboxes=np.array(
        [
            [221.52, 405.8, 344.98, 857.54],  # Box enclosing person
            [120, 425, 160, 445],  # Box enclosing glasses
        ],
    ),
    cls=np.array(
        [
            0,  # ID to be assigned for person
            1,  # ID to be assigned for glasses
        ]
    ),
)

# Run inference on an image, using the provided visual prompts as guidance
results = model.predict(
    "ultralytics/assets/bus.jpg",
    visual_prompts=visual_prompts,
    predictor=YOLOEVPSegPredictor,
)

# Show results
results[0].show()

YOLOE-26 включает варианты без подсказок, которые поставляются со встроенным словарем. Эти модели не требуют никаких подсказок и работают как традиционные модели YOLO. Вместо того чтобы полагаться на предоставленные пользователем метки или визуальные примеры, они detect объекты из предопределенного списка из 4585 классов на основе набора тегов, используемого Recognize Anything Model Plus (RAM++).

from ultralytics import YOLO

# Initialize model
model = YOLO("yoloe-26l-seg-pf.pt")

# Run prediction. No prompts required.
results = model.predict("path/to/image.jpg")

# Show results
results[0].show()

Для углубленного изучения методов подсказок, обучения с нуля и полных примеров использования посетите документацию YOLOE.

Цитирование и благодарности

Публикация Ultralytics YOLO26

Ultralytics не публиковала официальную исследовательскую статью для YOLO26 из-за быстро развивающегося характера моделей. Вместо этого мы сосредотачиваемся на предоставлении передовых моделей и упрощении их использования. Для получения последних обновлений о функциях, архитектурах и использовании YOLO посетите наш репозиторий GitHub и документацию.

Если вы используете YOLO26 или другое программное обеспечение Ultralytics в своей работе, пожалуйста, сошлитесь на него следующим образом:

@software{yolo26_ultralytics,
  author = {Glenn Jocher and Jing Qiu},
  title = {Ultralytics YOLO26},
  version = {26.0.0},
  year = {2026},
  url = {https://github.com/ultralytics/ultralytics},
  orcid = {0000-0001-5950-6979, 0000-0003-3783-7069},
  license = {AGPL-3.0}
}

DOI в ожидании. YOLO26 доступна по лицензиям AGPL-3.0 и Enterprise.


Часто задаваемые вопросы

Каковы основные улучшения в YOLO26 по сравнению с YOLO11?

  • Удаление DFL: Упрощает экспорт и расширяет совместимость с периферийными устройствами
  • Сквозной вывод без NMS: Устраняет NMS для более быстрого и простого развертывания
  • ProgLoss + STAL: Повышает точность, особенно для мелких объектов.
  • Оптимизатор MuSGD: Объединяет SGD и Muon (вдохновлен Kimi K2 от Moonshot) для более стабильного и эффективного обучения
  • До 43% более быстрый вывод на CPU: Значительное повышение производительности для устройств только с CPU

Какие задачи поддерживает YOLO26?

YOLO26 — это унифицированное семейство моделей, обеспечивающее комплексную поддержку для множества задач компьютерного зрения:

Каждый вариант размера (n, s, m, l, x) поддерживает все задачи, а также версии с открытым словарем через YOLOE-26.

Почему YOLO26 оптимизирован для развертывания на периферии?

YOLO26 обеспечивает передовую производительность на периферийных устройствах благодаря:

  • До 43% более быстрый вывод на CPU
  • Уменьшенный размер модели и занимаемый объем памяти
  • Архитектура упрощена для совместимости (нет DFL, нет NMS)
  • Гибкие форматы экспорта, включая TensorRT, ONNX, CoreML, TFLite и OpenVINO

Как начать работу с YOLO26?

Модели YOLO26 были выпущены 14 января 2026 года и доступны для скачивания. Установите или обновите ultralytics пакет и загрузите модель:

from ultralytics import YOLO

# Load a pretrained YOLO26 nano model
model = YOLO("yolo26n.pt")

# Run inference on an image
results = model("image.jpg")

См. раздел Примеры использования для инструкций по обучению, валидации и экспорту.



📅 Создано 3 месяцев назад ✏️ Обновлено 0 дней назад
glenn-jocherY-T-GLaughing-qraimbekovmfcakyonlmycrosspderrenger

Комментарии