Ultralytics YOLO27:

Экспорт в Intel OpenVINO#

OpenVINO Intel AI inference toolkit

В этом руководстве мы рассмотрим экспорт моделей YOLO26 в формат OpenVINO, который может обеспечить ускорение работы CPU до 3 раз, а также ускорить инференс YOLO на оборудовании Intel с GPU и NPU.

OpenVINO — сокращение от Open Visual Inference & Neural Network Optimization toolkit — это комплексный набор инструментов для оптимизации и развёртывания моделей AI-инференса. Несмотря на наличие слова Visual в названии, OpenVINO также поддерживает различные дополнительные задачи, включая обработку языка, аудио, временных рядов и другие.



Watch: How to Export Ultralytics YOLO26 to Intel OpenVINO Format for Faster Inference 🚀

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

Экспорт в OpenVINO поддерживает все семь задач Ultralytics. Семантическая сегментация и оценка глубины доступны только в YOLO26 — единственном семействе, поставляемом с такими головами.

Установка#

Установи зависимости экспорта OpenVINO с помощью:

pip install "ultralytics[export-openvino]"

Эти зависимости также включены в ultralytics[export] и устанавливаются автоматически, когда это требуется для экспорта.

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

Формат OpenVINO поддерживает режимы Export, Predict и Validate. Экспортируй модель, затем загрузи экспортированную модель, чтобы запустить инференс или проверить её точность на Intel CPU, интегрированной или дискретной GPU либо NPU.

Экспорт
from ultralytics import YOLO

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

# Export the model to OpenVINO format
model.export(format="openvino")  # creates 'yolo26n_openvino_model/'
Predict
from ultralytics import YOLO

# Load the exported OpenVINO model
model = YOLO("yolo26n_openvino_model/")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")

# Run inference on a specific device, available devices: ["intel:gpu", "intel:npu", "intel:cpu"]
results = model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")
Валидация
from ultralytics import YOLO

# Load the exported OpenVINO model
model = YOLO("yolo26n_openvino_model/")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Аргументы экспорта#

АргументТипПо умолчаниюОписание
formatstr'openvino'Целевой формат экспортированной модели, определяющий совместимость с различными средами развёртывания.
imgszint или tuple640Требуемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для указания конкретных размеров.
quantizeint или strNoneТочность квантования: 16 (FP16) или 8 (INT8/PTQ; требуется калибровка data/fraction); 32/не задано — FP32. Заменяет устаревшие флаги half/int8.
dynamicboolFalseРазрешает динамические размеры входных данных, повышая гибкость при работе с изображениями разных размеров.
nmsbool, необязательноNoneВыбери необработанный вывод (None, по умолчанию), встроенный NMS (True) или голову без NMS (False).
batchint1Задаёт размер пакета при инференсе экспортированной модели или максимальное количество изображений, которые экспортированная модель будет обрабатывать одновременно в режиме predict.
datastrNoneПуть к YAML-файлу датасета, необходимый для квантования; для классификации вместо этого указывается каталог датасета или имя встроенного датасета. Если параметр не задан вместе с quantize=8, Ultralytics выбирает датасет калибровки по умолчанию для задачи модели.
fractionfloat, int или list1.0Подмножество для калибровки в виде доли, количества изображений или значений [train, val, test] — долей/количеств. В списках из двух элементов test оставляет полный набор, а 0 пропускает его.

Подробнее о процессе экспорта см. на странице документации Ultralytics об экспорте.

Предупреждение

OpenVINO™ совместим с большинством процессоров Intel®, но для обеспечения оптимальной производительности:

  1. Проверь поддержку OpenVINO™ Проверь, поддерживается ли твой чип Intel® официально OpenVINO™, используя список совместимости Intel.

  2. Определи свой ускоритель Узнай, оснащён ли твой процессор интегрированным NPU (нейронным процессором) или GPU (интегрированной GPU), обратившись к руководству Intel по оборудованию.

  3. Установи последние драйверы Если твой чип поддерживает NPU или GPU, но OpenVINO™ его не обнаруживает, возможно, потребуется установить или обновить соответствующие драйверы. Следуй инструкциям по установке драйверов, чтобы включить полное ускорение.

Выполнив эти три шага, ты обеспечишь оптимальную работу OpenVINO™ на своём оборудовании Intel®.

Преимущества OpenVINO#

  1. Производительность: OpenVINO обеспечивает высокую производительность инференса, используя возможности Intel CPU, интегрированных и дискретных GPU, а также FPGA.
  2. Поддержка гетерогенного выполнения: OpenVINO предоставляет API, позволяющий один раз написать код и развёртывать его на любом поддерживаемом оборудовании Intel (CPU, GPU, FPGA, VPU и т. д.).
  3. Оптимизатор моделей: OpenVINO предоставляет оптимизатор моделей, который импортирует, преобразует и оптимизирует модели из популярных фреймворков глубокого обучения, таких как PyTorch, TensorFlow, TensorFlow Lite, Keras, ONNX, PaddlePaddle и Caffe.
  4. Простота использования: набор инструментов включает большую коллекцию учебных ноутбуков, в том числе ноутбуки по оптимизации YOLO26, которые обучают различным аспектам работы с набором инструментов.

Структура экспорта OpenVINO#

При экспорте модели в формат OpenVINO создаётся каталог, содержащий следующее:

  1. XML-файл: описывает топологию сети.
  2. BIN-файл: содержит двоичные данные весов и смещений.
  3. Файл сопоставления: содержит соответствия между выходными тензорами исходной модели и именами тензоров OpenVINO.

Эти файлы можно использовать для запуска инференса с помощью OpenVINO Inference Engine.

Использование экспорта OpenVINO при развёртывании#

После успешного экспорта модели в формат OpenVINO у тебя есть два основных варианта запуска инференса:

  1. Использовать пакет ultralytics, который предоставляет высокоуровневый API и оборачивает OpenVINO Runtime.

  2. Использовать нативный пакет openvino для более расширенного или настраиваемого управления поведением инференса.

Инференс с Ultralytics#

Пакет ultralytics позволяет легко запускать инференс с использованием экспортированной модели OpenVINO через метод predict. Также можно указать целевое устройство (например, intel:gpu, intel:npu, intel:cpu) с помощью аргумента device.

from ultralytics import YOLO

# Load the exported OpenVINO model
ov_model = YOLO("yolo26n_openvino_model/")  # the path of your exported OpenVINO model
# Run inference with the exported model
ov_model.predict(device="intel:gpu")  # specify the device you want to run inference on

Этот подход идеально подходит для быстрого прототипирования или развёртывания, когда тебе не нужен полный контроль над конвейером инференса.

Инференс с OpenVINO Runtime#

OpenVINO Runtime предоставляет унифицированный API для инференса на всём поддерживаемом оборудовании Intel. Он также предлагает расширенные возможности, такие как балансировка нагрузки между устройствами Intel и асинхронное выполнение. Подробнее о запуске инференса см. в ноутбуках YOLO26.

Помни: для корректной настройки и использования модели с Runtime тебе понадобятся XML- и BIN-файлы, а также параметры, зависящие от приложения, например размер входных данных, коэффициент масштабирования для нормализации и т. д.

В приложении для развёртывания обычно выполняются следующие шаги:

  1. Инициализируй OpenVINO, создав core = Core().
  2. Загрузи модель с помощью метода core.read_model().
  3. Скомпилируй модель с помощью функции core.compile_model().
  4. Подготовь входные данные (изображение, текст, аудио и т. д.).
  5. Запусти инференс с помощью compiled_model(input_data).

Более подробные инструкции и фрагменты кода см. в документации OpenVINO или учебнике по API.

Бенчмарки YOLO26 в OpenVINO#

Команда Ultralytics протестировала YOLO26 в различных форматах моделей и вариантах точности, оценивая скорость и точность на разных устройствах Intel, совместимых с OpenVINO.

Примечание
  • Приведённые ниже результаты бенчмарков предназначены для справки и могут отличаться в зависимости от точной конфигурации оборудования и программного обеспечения системы, а также от текущей нагрузки на систему во время проведения бенчмарков.

  • Все бенчмарки выполнялись с версией Python-пакета openvino 2026.2.1.

  • Модели YOLO26 на NPU поддерживаются только в системах Intel® Core™ Ultra™ серий 2xxV и 3xx и выше.

Intel® Core™ Ultra#

Серия Intel® Core™ Ultra™ задаёт новый стандарт высокопроизводительных вычислений и разработана с учётом меняющихся потребностей современных пользователей — от геймеров и создателей контента до специалистов, использующих AI. Эта линейка нового поколения — не просто традиционная серия CPU: она объединяет мощные ядра CPU, интегрированные высокопроизводительные возможности GPU и выделенный нейронный процессор (NPU) в одном чипе, предлагая унифицированное решение для разнообразных и ресурсоёмких вычислительных нагрузок.

В основе архитектуры Intel® Core Ultra™ лежит гибридная конструкция, обеспечивающая высокую производительность в традиционных задачах обработки, нагрузках с ускорением на GPU и операциях на базе AI. Наличие NPU повышает эффективность AI-инференса на устройстве, обеспечивая более быструю и эффективную обработку машинного обучения и данных в широком спектре приложений.

Семейство Core Ultra™ включает различные модели, адаптированные под разные требования к производительности: от энергоэффективных решений до мощных вариантов с обозначением «H», идеально подходящих для ноутбуков и компактных устройств, которым нужна высокая вычислительная мощность. Во всей линейке пользователи получают преимущества совместной работы CPU, GPU и NPU, обеспечивающей высокую эффективность, отзывчивость и возможности многозадачности.

В рамках продолжающихся инноваций Intel серия Core Ultra™ устанавливает новый стандарт вычислений, готовых к будущему. Благодаря множеству доступных моделей и новым моделям на горизонте эта серия подчёркивает стремление Intel создавать передовые решения для следующего поколения интеллектуальных устройств с поддержкой AI.

Приведённые ниже бенчмарки выполнены на Intel® Core™ Ultra™ X7 358H, Intel® Core™ Ultra™ 7 258V и Intel® Core™ Ultra™ 7 155H с точностью FP32, FP16 и INT8.

Intel® Core™ Ultra™ X7 358H#

Бенчмарки
Intel Core Ultra GPU benchmarks
Подробные результаты бенчмарков
МодельФорматPrecisionСтатусРазмер (МБ)metrics/mAP50-95(B)Время инференции (мс/изображение)
YOLO26nPyTorch (CPU)FP325.30.476529.28
YOLO26nOpenVINOFP329.70.47624.09
YOLO26nOpenVINOFP165.10.47624.03
YOLO26nOpenVINOINT83.20.46344.24
YOLO26sPyTorch (CPU)FP3219.50.570359.32
YOLO26sOpenVINOFP3236.70.56165.08
YOLO26sOpenVINOFP1618.70.56165.14
YOLO26sOpenVINOINT810.00.54624.47
YOLO26mPyTorch (CPU)FP3242.20.6196143.21
YOLO26mOpenVINOFP3278.40.61667.1
YOLO26mOpenVINOFP1639.50.61667.06
YOLO26mOpenVINOINT820.60.60555.61
YOLO26lPyTorch (CPU)FP3250.70.6215181.16
YOLO26lOpenVINOFP3295.30.62058.45
YOLO26lOpenVINOFP1648.10.62058.49
YOLO26lOpenVINOINT825.20.59386.25
YOLO26xPyTorch (CPU)FP32113.20.6512379.75
YOLO26xOpenVINOFP32213.30.656813.03
YOLO26xOpenVINOFP16107.10.656812.98
YOLO26xOpenVINOINT854.80.63858.74

Intel® Core™ Ultra™ 7 258V#

Бенчмарки
Intel Core Ultra GPU benchmarks
Подробные результаты бенчмарков
МодельФорматPrecisionСтатусРазмер (МБ)metrics/mAP50-95(B)Время инференции (мс/изображение)
YOLO26nPyTorch (CPU)FP325.30.476527.33
YOLO26nOpenVINOFP329.60.47643.33
YOLO26nOpenVINOFP165.10.47643.34
YOLO26nOpenVINOINT83.20.46343.46
YOLO26sPyTorch (CPU)FP3219.50.570360.2
YOLO26sOpenVINOFP3236.70.56164.66
YOLO26sOpenVINOFP1618.60.56164.65
YOLO26sOpenVINOINT810.00.54623.99
YOLO26mPyTorch (CPU)FP3242.20.6196152.87
YOLO26mOpenVINOFP3278.40.61689.03
YOLO26mOpenVINOFP1639.50.61688.98
YOLO26mOpenVINOINT820.60.60555.7
YOLO26lPyTorch (CPU)FP3250.70.6215201.57
YOLO26lOpenVINOFP3295.30.620311.32
YOLO26lOpenVINOFP1648.10.620311.36
YOLO26lOpenVINOINT825.20.59387.45
YOLO26xPyTorch (CPU)FP32113.20.6512431.04
YOLO26xOpenVINOFP32213.20.656819.08
YOLO26xOpenVINOFP16107.10.656819.63
YOLO26xOpenVINOINT854.80.638513.69

Intel® Core™ Ultra™ 7 155H#

Бенчмарки
Intel Core Ultra GPU benchmarks
Подробные результаты бенчмарков
МодельФорматPrecisionСтатусРазмер (МБ)metrics/mAP50-95(B)Время инференции (мс/изображение)
YOLO26nPyTorch (CPU)FP325.30.476533.19
YOLO26nOpenVINOFP329.60.47589.13
YOLO26nOpenVINOFP165.10.47589.07
YOLO26nOpenVINOINT83.20.45735.79
YOLO26sPyTorch (CPU)FP3219.50.570370.92
YOLO26sOpenVINOFP3236.70.561616.37
YOLO26sOpenVINOFP1618.60.561616.65
YOLO26sOpenVINOINT810.00.5459.27
YOLO26mPyTorch (CPU)FP3242.20.6196192.45
YOLO26mOpenVINOFP3278.40.616734.47
YOLO26mOpenVINOFP1639.50.616735.71
YOLO26mOpenVINOINT820.60.603915.46
YOLO26lPyTorch (CPU)FP3250.70.6215239.19
YOLO26lOpenVINOFP3295.30.62143.24
YOLO26lOpenVINOFP1648.10.62143.4
YOLO26lOpenVINOINT825.20.599919.72
YOLO26xPyTorch (CPU)FP32113.20.6512511.89
YOLO26xOpenVINOFP32213.20.655279.49
YOLO26xOpenVINOFP16107.10.655279.45
YOLO26xOpenVINOINT854.80.64234.66

Воспроизведение наших результатов#

Чтобы воспроизвести приведённые выше бенчмарки Ultralytics для всех экспортных форматов, выполни этот код:

Пример
from ultralytics import YOLO

# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")

# Benchmark YOLO26n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml")

Учти, что результаты бенчмаркинга могут отличаться в зависимости от точной конфигурации оборудования и программного обеспечения системы, а также от текущей нагрузки на систему во время проведения бенчмарков. Для получения наиболее надёжных результатов используй датасет с большим количеством изображений, например data='coco.yaml' (5000 изображений валидации).

Заключение#

Результаты бенчмаркинга наглядно демонстрируют преимущества экспорта модели YOLO26 в формат OpenVINO. На разных моделях и аппаратных платформах формат OpenVINO стабильно превосходит другие форматы по скорости инференса, сохраняя сопоставимую точность.

Бенчмарки подтверждают эффективность OpenVINO как инструмента для развёртывания моделей глубокого обучения. Преобразуя модели в формат OpenVINO, разработчики могут добиться значительного повышения производительности, что упрощает развёртывание этих моделей в реальных приложениях.

Более подробную информацию и инструкции по использованию OpenVINO см. в официальной документации OpenVINO.

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

  • Экспорт моделей YOLO26 в формат OpenVINO может значительно повысить скорость работы CPU и включить ускорение на GPU и NPU в оборудовании Intel. Для экспорта можно использовать Python или CLI, как показано ниже:

    Пример
    from ultralytics import YOLO
    
    # Load a YOLO26n PyTorch model
    model = YOLO("yolo26n.pt")
    
    # Export the model
    model.export(format="openvino")  # creates 'yolo26n_openvino_model/'

    Дополнительную информацию см. в документации по форматам экспорта.

  • Использование набора инструментов OpenVINO от Intel с моделями YOLO26 даёт несколько преимуществ:

    1. Производительность: до 3-кратного ускорения инференса на CPU и использование GPU и NPU Intel для ускорения.
    2. Оптимизатор моделей: преобразование, оптимизация и выполнение моделей из популярных фреймворков, таких как PyTorch, TensorFlow и ONNX.
    3. Простота использования: доступна большая коллекция учебных ноутбуков, помогающих начать работу, включая ноутбуки для YOLO26.
    4. Гетерогенное выполнение: развёртывание моделей на различном оборудовании Intel с помощью унифицированного API.

    Подробные сравнения производительности см. в нашем разделе с бенчмарками.

  • После экспорта модели YOLO26n в формат OpenVINO можно запустить инференс с помощью Python или CLI:

    Пример
    from ultralytics import YOLO
    
    # Load the exported OpenVINO model
    ov_model = YOLO("yolo26n_openvino_model/")
    
    # Run inference
    results = ov_model("https://ultralytics.com/images/bus.jpg")

    Подробнее см. в нашей документации по режиму predict.

  • Ultralytics YOLO26 оптимизирована для обнаружения объектов в реальном времени с высокой точностью и скоростью. В сочетании с OpenVINO YOLO26 обеспечивает:

    • Ускорение до 3 раз на CPU Intel
    • Бесшовное развёртывание на GPU и NPU Intel
    • Стабильную и сопоставимую точность в различных экспортных форматах

    Для подробного анализа производительности ознакомься с нашими подробными бенчмарками YOLO26 на различном оборудовании.

  • Да, можно сравнить производительность моделей YOLO26 в различных форматах, включая PyTorch, TorchScript, ONNX и OpenVINO. Используй следующий фрагмент кода, чтобы запустить бенчмарки на выбранном датасете:

    Пример
    from ultralytics import YOLO
    
    # Load a YOLO26n PyTorch model
    model = YOLO("yolo26n.pt")
    
    # Benchmark YOLO26n speed and [accuracy](https://www.ultralytics.com/glossary/accuracy) on the COCO8 dataset for all export formats
    results = model.benchmark(data="coco8.yaml")

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

Комментарии