Аналитика с использованием Ultralytics YOLO26#
Аналитика с Ultralytics YOLO26 преобразует результаты обнаружения объектов и трекинга в графики в реальном времени, позволяя тебе наблюдать, как количество объектов меняется в каждом кадре видео. В этом руководстве рассматриваются четыре типа визуализации данных — линейные графики, столбчатые диаграммы, круговые диаграммы и графики с областями — и показано, как переключаться между ними с помощью общих примеров для Python и CLI.
Watch: How to generate Analytical Graphs using Ultralytics | Line Graphs, Bar Plots, Area and Pie Charts
Визуальные примеры#
| Линейный график | Столбчатая диаграмма | Круговая диаграмма |
|---|---|---|
![]() | ![]() | ![]() |
Зачем визуализировать данные об обнаружении объектов?#
- Линейные графики идеально подходят для отслеживания изменений за короткие и длительные периоды, а также для сравнения изменений нескольких групп за один и тот же период.
- Столбчатые диаграммы подходят для сравнения величин в разных категориях и отображения взаимосвязи между категорией и её числовым значением.
- Круговые диаграммы эффективно иллюстрируют соотношения между категориями и показывают части целого.
- Графики с областями заполняют область под линейным графиком, чтобы количество объектов каждого класса с течением времени было проще оценивать с первого взгляда.
Создание аналитических графиков#
Передай видео в решение 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. |
line_width | int | 2 | Толщина линий для рамок, ключевых точек и счётчиков, которые рисует решение. |
verbose | bool | True | Включает покадровый журнал решения с указанием формы входных данных, количества классов и скорости обработки. Сам вызов отслеживания всегда выполняется без вывода. |
Ты также можешь использовать различные аргументы track в решении Analytics.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
tracker | str | 'botsort.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/не задано (FP32) для моделей PyTorch и TorchScript; остальные форматы выполняют вычисления с точностью, выбранной их артефактом и средой выполнения. Заменяет устаревший флаг 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: оно отслеживает несколько объектов в реальном времени и обновляет график данными отслеживаемых объектов в каждом кадре, поэтому линейные графики, столбчатые диаграммы, круговые диаграммы и графики с областями отражают текущие значения. Именно это делает цикл обработки кадров в примере на Python выше. Подробнее о базовой функциональности трекинга см. в разделе Трекинг.Ultralytics YOLO26 отличается от других решений для обнаружения объектов, таких как OpenCV и TensorFlow, по нескольким причинам:
- Современная точность: YOLO26 обеспечивает превосходную точность в задачах обнаружения объектов, сегментации экземпляров, семантической сегментации и классификации.
- Простота использования: удобный API позволяет быстро реализовать и интегрировать решение без большого объёма кода.
- Производительность в реальном времени: оптимизировано для высокоскоростного вывода и подходит для приложений реального времени.
- Разнообразие применений: поддерживает трекинг нескольких объектов, обучение пользовательских моделей и экспорт в различные форматы, такие как ONNX, TensorRT и CoreML.
- Полная документация: подробная документация и материалы блога помогают пользователям пройти каждый этап.
Более подробные сравнения и примеры использования см. в нашем блоге Ultralytics.


