Аналитика с Ultralytics YOLO26#
Аналитика с Ultralytics YOLO26 преобразует результаты обнаружения объектов и отслеживания в графики в реальном времени, позволяя видеть, как меняется число объектов на каждом кадре видео. В этом руководстве рассматриваются четыре типа визуализации данных — линейные графики, столбчатые диаграммы, круговые диаграммы и диаграммы с областями — и показано, как переключаться между ними с помощью общих примеров для Python и CLI.
Смотри: Как создавать аналитические графики с помощью Ultralytics | Линейные графики, столбчатые диаграммы, графики с областями и круговые диаграммы
Примеры визуализации#
| Линейный график | Столбчатая диаграмма | Круговая диаграмма |
|---|---|---|
![]() | ![]() | ![]() |
Зачем визуализировать данные обнаружения?#
- Линейные графики отлично подходят для отслеживания изменений за короткие и длительные периоды, а также для сравнения изменений в нескольких группах за один и тот же период.
- Столбчатые диаграммы подходят для сравнения величин в разных категориях и отображения связи между категорией и её числовым значением.
- Круговые диаграммы наглядно показывают соотношение категорий и части целого.
- Диаграммы с областями заполняют пространство под линией графика, благодаря чему число объектов каждого класса с течением времени проще оценить с первого взгляда.
Построение графиков аналитики#
Передай видео решению Analytics и выбери диаграмму с помощью analytics_type. Решение выполняет обнаружение и отслеживание на каждом кадре и строит диаграмму размером 1280×720 (по умолчанию), которую можно сразу записать в выходное видео. Переключайся между "line", "bar", "pie" и "area" с помощью одного аргумента.
yolo solutions analytics show=True
# Pass the source
yolo solutions analytics source="path/to/video.mp4"
# Generate the pie chart
yolo solutions analytics analytics_type="pie" show=True
# Generate the bar plots
yolo solutions analytics analytics_type="bar" show=True
# Generate the area plots
yolo solutions analytics analytics_type="area" show=TrueАргументы Analytics#
Ниже приведена таблица с аргументами Analytics:
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
model | str | None | Путь к файлу модели Ultralytics YOLO. |
analytics_type | str | 'line' | Тип графика: line, bar, area или pie. |
figsize | tuple[float, float] | (12.8, 7.2) | Размер графиков Analytics в дюймах; (12.8, 7.2) отображает кадр размером 1280×720. |
line_width | int | 2 | Толщина линий рамок, ключевых точек и счётчиков, которые рисует решение. |
verbose | bool | True | Включает журнал решения для каждого кадра с указанием формы входных данных, количества объектов по классам и скорости обработки. Сам вызов отслеживания всегда выполняется без вывода сообщений. |
В решении Analytics также можно использовать различные аргументы track.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
tracker | str | 'tracktrack.yaml' | Задаёт алгоритм отслеживания. Встроенные варианты: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Задаёт порог уверенности для обнаружений: при более низких значениях можно отслеживать больше объектов, но возрастает вероятность ложноположительных срабатываний. |
iou | float | 0.7 | Задаёт порог пересечения над объединением (IoU) для фильтрации перекрывающихся обнаружений. |
classes | list | None | Фильтрует результаты по индексу класса. Например, classes=[0, 2, 3] отслеживает только указанные классы. |
device | str | None | Задаёт устройство для инференса (например, cpu, cuda:0 или 0). Позволяет выбрать CPU, определённый GPU или другое вычислительное устройство для выполнения модели. |
imgsz | int or tuple | 640 | Целевой размер изображения для инференса: целое число для квадратного изображения или пара (height, width). Размеры корректируются с учётом шага модели. |
max_det | int | 300 | Максимальное количество обнаружений, сохраняемых в каждом кадре перед отслеживанием; ограничивает число объектов, обрабатываемых решением в насыщенных сценах. |
quantize | int or str | None | Точность инференса: 16 (FP16) или 32/unset (FP32) для моделей PyTorch и TorchScript не на CPU; для других форматов точность определяется артефактом модели и средой выполнения. Заменяет устаревший аргумент half. |
Кроме того, поддерживаются следующие аргументы визуализации:
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
show | bool | False | Если True, показывает аннотированные изображения или видео в окне. Полезно для мгновенной визуальной проверки во время разработки или тестирования. |
Заключение#
Чтобы эффективно анализировать данные, важно понимать, когда и как использовать разные типы визуализации. Линейные графики, столбчатые и круговые диаграммы — основные инструменты, которые помогают наглядно и понятно рассказать о данных. Решение Ultralytics YOLO26 Analytics упрощает построение таких визуализаций по результатам обнаружения объектов и отслеживания, помогая извлекать полезные выводы из визуальных данных.
Часто задаваемые вопросы#
Чтобы построить линейный график с помощью Ultralytics YOLO26 Analytics, выполни следующие действия:
- Загрузи модель YOLO26 и открой видеофайл.
- Инициализируй класс
Analyticsс помощьюanalytics_type="line". - Перебирай кадры видео, вызывая решение для каждого кадра, чтобы обновлять линейный график данными, например количеством объектов.
- Записывай
results.plot_imв выходное видео, чтобы сохранить диаграмму.
Возьми за основу пример Python выше: в нём уже реализован полный цикл обработки кадров, а тип диаграммы
analytics_typeиспользуется по умолчанию.Использование Ultralytics YOLO26 для построения столбчатых диаграмм даёт несколько преимуществ:
- Визуализация данных в реальном времени: результаты обнаружения объектов легко интегрируются в столбчатые диаграммы и динамически обновляются.
- Простота использования: благодаря простому API и функциям реализовать визуализацию данных легко.
- Настройка: адаптируй заголовки, подписи, цвета и другие параметры под свои требования.
- Эффективность: решение эффективно обрабатывает большие объёмы данных и обновляет графики в реальном времени во время обработки видео.
Чтобы построить столбчатую диаграмму, укажи
analytics_type="bar"в примере Python выше — остальная часть цикла обработки кадров не меняется. Пример диаграммы см. в разделе «Примеры визуализации».Ultralytics YOLO26 отлично подходит для построения круговых диаграмм по следующим причинам:
- Интеграция с обнаружением объектов: напрямую добавляй результаты обнаружения объектов в круговые диаграммы, чтобы сразу получать полезную информацию.
- Удобный API: простая настройка и использование с минимальным количеством кода.
- Гибкая настройка: множество вариантов настройки цветов, подписей и других параметров.
- Обновление в реальном времени: решение обрабатывает и визуализирует данные в реальном времени, что идеально подходит для проектов видеоаналитики.
Чтобы построить круговую диаграмму, укажи
analytics_type="pie"в примере Python выше. Подробнее см. в разделе «Примеры визуализации» руководства.Да. Отслеживание встроено в решение
Analytics: оно отслеживает несколько объектов в реальном времени и обновляет диаграмму по данным отслеживаемых объектов каждые 30 кадров, поэтому линейные графики, столбчатые и круговые диаграммы, а также диаграммы с областями отражают текущие значения. Именно это делает цикл обработки кадров в примере Python выше. Подробнее о базовой функциональности отслеживания см. в разделе «Отслеживание».Ultralytics YOLO26 отличается от других решений для обнаружения объектов, таких как OpenCV и TensorFlow, по нескольким причинам:
- Высокая точность: YOLO26 обеспечивает превосходную точность в задачах обнаружения объектов, сегментации экземпляров, семантической сегментации и классификации.
- Простота использования: удобный API позволяет быстро внедрять и интегрировать решение без большого объёма программирования.
- Производительность в реальном времени: решение оптимизировано для высокоскоростного инференса и подходит для приложений реального времени.
- Широкий спектр применений: поддерживаются отслеживание нескольких объектов, обучение пользовательских моделей и экспорт в разные форматы, включая ONNX, TensorRT и CoreML.
- Подробная документация: обширная документация и материалы блога помогут тебе на каждом этапе.
Подробные сравнения и примеры использования см. в нашем блоге Ultralytics.


