Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Real-time Inference

Инференс в реальном времени возвращает каждое предсказание до поступления следующего входного сигнала, например в течение 33 мс на кадр при 30 FPS. Рассматриваются бюджеты задержки и способы ускорения.

Инференс в реальном времени означает запуск обученной модели на поступающих данных и возврат каждого предсказания до появления следующего входного значения, чтобы система могла действовать, пока информация ещё актуальна. При потоковой передаче с камеры со скоростью 30 кадров в секунду (FPS) на всё — от чтения изображения до получения итогового результата — остаётся 33.3 миллисекунды на кадр; при 60 FPS бюджет сокращается до 16.7 мс. Для каждого приложения установлен свой срок: система восприятия автомобиля, камера контроля на конвейере и фильтр фона во время видеозвонка работают в реальном времени, но с разными временными бюджетами.

Бюджет задержки#

Учитывается сквозная задержка инференса: захват кадра, его предварительная обработка — изменение размера и нормализация, прямой проход модели и постобработка, например декодирование рамок и подавление немаксимумов (NMS). Если суммарное время превышает интервал между кадрами, необработанные кадры накапливаются, а результат всё сильнее отстаёт от реальной сцены. Поэтому конвейеры потоковой обработки обычно отбрасывают устаревшие кадры и всегда обрабатывают самый новый. В системах реального времени различают системы жёсткого реального времени, в которых пропуск срока считается отказом (например, контроллер подушки безопасности), и системы мягкого реального времени, допускающие редкие пропуски. Большинство приложений компьютерного зрения относятся к системам мягкого реального времени: пропуск кадра на мгновение снижает качество результата, но следующий кадр восстанавливает его.

Этот фрагмент передаёт записанное видео потоком через небольшой детектор и сравнивает среднее время обработки кадра с бюджетом для 30 FPS:

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
video = "https://github.com/ultralytics/assets/releases/download/v0.0.0/decelera_portrait_min.mov"

# stream=True yields each frame's result as soon as it is ready
frame_times = []
for result in model(video, stream=True):
    # Preprocess, inference, and postprocess time for this frame, in milliseconds
    frame_times.append(sum(result.speed.values()))

mean_ms = sum(frame_times) / len(frame_times)
print(f"{mean_ms:.1f} ms per frame ({1000 / mean_ms:.0f} FPS); a 30 FPS camera allows 33.3 ms")

Среднее время менее 33.3 мс означает, что модель успевает обрабатывать видео с камеры со скоростью 30 FPS на оборудовании, на котором она была запущена.

Инференс в реальном времени и пакетный инференс#

  • Инференс в реальном времени (онлайн-инференс): обрабатывает каждый входной сигнал по мере поступления, обычно по одному изображению за раз; его оценивают по задержке каждого отдельного предсказания. От него зависят системы помощи водителю, управление роботами и аналитика видео в реальном времени.
  • Пакетный инференс (офлайн-инференс): собирает множество входных данных и обрабатывает их вместе; его оценивают по пропускной способности в количестве входных данных в секунду и по стоимости. Ночная переиндексация фотоархива и анализ записей за прошлый месяц — это пакетные задачи. Большие пакеты эффективнее загружают GPU, но обработка каждого входного сигнала занимает больше времени.

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

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

  • Автономные транспортные средства: при скорости 100 км/ч автомобиль проходит 2.8 метра за каждые 100 мс, поэтому задержка восприятия напрямую увеличивает тормозной путь.
  • Контроль качества на производстве: установленные над конвейером камеры обнаруживают дефекты каждой детали и должны включить механизм отбраковки до того, как дефектная деталь проедет мимо него.
  • Робототехника: обнаружение препятствий и оценка позы выполняются в контуре управления роботом, а замедление восприятия вынуждает снижать скорость движения.
  • Видеоэффекты и дополненная реальность: размытие фона в видеозвонках и наложения дополненной реальности используют сегментацию или трекинг для каждого кадра; любая задержка приводит к тому, что наложение отстаёт от движущегося человека.

Как добиться достаточной скорости модели#

  • Меньшая модель или размер входного изображения: вариант модели меньшего размера выполняет меньше операций на изображение. Поскольку объём вычислений для свёрток примерно пропорционален числу пикселей, уменьшение ширины и высоты входного изображения вдвое сокращает его примерно до четверти, но может снизить точность обнаружения мелких объектов.
  • Квантование модели: хранение весов и активаций в формате FP16 или INT8 вместо FP32 снижает объём передачи данных и позволяет использовать более быстрые вычислительные блоки. Для INT8 обычно нужен набор калибровочных изображений, чтобы свести к минимуму потерю точности.
  • Движки инференса: среда выполнения, созданная для определённого семейства оборудования, объединяет слои и выбирает ядра, оптимизированные для устройства, например TensorRT для GPU NVIDIA или Core ML для устройств Apple.
  • Периферийный ИИ: запуск модели на камере или встроенном модуле исключает задержку при обмене данными с облачным сервисом, которая при медленном соединении может превысить весь временной бюджет кадра.

Среда выполнения и оборудование меняют задержку более чем на порядок: модель nano YOLO26 обрабатывает изображение размером 640 пикселей за 38,9 мс на CPU с ONNX и за 1,7 мс на GPU NVIDIA T4 с TensorRT. Режим экспорта Ultralytics преобразует обученную модель YOLO26 в TensorRT, OpenVINO, LiteRT и другие форматы, а аргумент quantize=16 или quantize=8 создаёт веса FP16 или INT8 для целевого устройства.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения