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

Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀
Решения#
Вот наш тщательно подобранный список решений Ultralytics, которые можно использовать для создания потрясающих проектов в области компьютерного зрения.
- Аналитика: проводи комплексный анализ данных для выявления закономерностей и принятия обоснованных решений, используя YOLO26 для описательной, прогнозной и предписывающей аналитики.
- Расчет расстояния: вычисляй расстояния между объектами с помощью центроидов bounding box в YOLO26, что важно для пространственного анализа.
- Тепловые карты: используй тепловые карты детектирования для визуализации интенсивности данных по матрице, обеспечивая наглядное понимание задач компьютерного зрения.
- Сегментация экземпляров с трекингом объектов: реализуй сегментацию экземпляров и трекинг объектов с помощью YOLO26 для получения точных границ объектов и непрерывного мониторинга.
- Инференс в реальном времени с Streamlit: задействуй возможности YOLO26 для обнаружения объектов в реальном времени прямо в веб-браузере с помощью удобного интерфейса Streamlit.
- Размытие объектов: применяй размытие объектов с помощью YOLO26 для защиты конфиденциальности при обработке изображений и видео.
- Подсчет объектов: научись выполнять подсчет объектов в реальном времени с помощью YOLO26. Получи навыки точного подсчета объектов в видеопотоках в реальном времени.
- Подсчет объектов в областях: подсчитывай объекты в определенных областях с помощью YOLO26 для точного детектирования в различных зонах.
- Обрезание объектов: освой обрезание объектов с помощью YOLO26 для точного извлечения объектов из изображений и видео.
- Управление парковкой: организуй и направляй поток транспортных средств на парковках с помощью YOLO26, оптимизируя использование пространства и пользовательский опыт.
- Управление очередями: внедряй эффективные системы управления очередями для минимизации времени ожидания и повышения производительности с помощью YOLO26.
- Система охранной сигнализации: создай систему охранной сигнализации с помощью YOLO26, которая подает сигналы тревоги при обнаружении новых объектов. Настрой систему под свои конкретные нужды.
- Поиск по сходству: включи интеллектуальный поиск изображений, объединив эмбеддинги OpenAI CLIP с поиском по косинусному сходству, что позволяет использовать запросы на естественном языке, такие как "человек с сумкой" или "движущийся транспорт".
- Оценка скорости: оценивай скорость объектов с помощью YOLO26 и методов трекинга объектов, что критически важно для таких приложений, как автономные транспортные средства и мониторинг дорожного движения.
- Трекинг объектов в зоне: узнай, как отслеживать объекты в определенных зонах видеокадров с помощью YOLO26 для точного и эффективного мониторинга.
- Картирование объектов VisionEye View: разрабатывай системы, имитирующие фокусировку человеческого глаза на определенных объектах, повышая способность компьютера распознавать детали и расставлять приоритеты.
- Мониторинг тренировок: узнай, как контролировать тренировки с помощью YOLO26. Научись отслеживать и анализировать различные фитнес-рутины в реальном времени.
Аргументы решений#
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
model | str | None | Путь к файлу модели Ultralytics YOLO. |
region | list или dict | None | Точки, определяющие область интереса (ROI): либо список кортежей (x, y), либо словарь, сопоставляющий имена областей со списками точек для нескольких областей (только для RegionCounter). Когда None, решения, требующие наличия области, возвращаются к предопределенному значению по умолчанию. |
show_in | bool | True | Флаг для управления отображением входящих объектов в потоке видео. |
show_out | bool | True | Флаг для управления отображением выходящих объектов в потоке видео. |
analytics_type | str | 'line' | Тип графа, то есть line, bar, area или pie. |
colormap | int | cv2.COLORMAP_DEEPGREEN | Цветовая карта для использования в тепловой карте. |
line_width | int | 2 | Толщина линий для рамок, ключевых точек и подсчетов, отрисовываемых решением. |
verbose | bool | True | Включает покадровый лог решения, содержащий форму входных данных, количество классов и скорость обработки. Сам вызов трекинга всегда выполняется молча. |
json_file | str | None | Путь к JSON-файлу, который содержит все данные о координатах парковки. |
up_angle | float | 145.0 | Пороговый угол для позы «вверх». |
kpts | list[int] | '[6, 8, 10]' | Список из трех индексов ключевых точек, используемых для контроля тренировок. Эти ключевые точки соответствуют суставам или частям тела, таким как плечи, локти и запястья, для упражнений типа отжиманий, подтягиваний, приседаний и упражнений на пресс. |
down_angle | int | 90 | Пороговый угол для позы «вниз». |
blur_ratio | float | 0.5 | Регулирует процент интенсивности размытия со значениями в диапазоне 0.1 - 1.0. |
crop_dir | str | 'cropped-detections' | Имя директории для хранения обрезанных обнаружений. |
records | int | 5 | Общее количество обнаружений для запуска электронной почты с охранной сигнализацией. |
vision_point | tuple[int, int] | (20, 20) | Точка, где зрение будет отслеживать объекты и рисовать пути, используя решение VisionEye. |
source | str | None | Путь к входному источнику (видео, RTSP и т. д.). Используется только с интерфейсом командной строки (CLI) решений. |
figsize | tuple[float, float] | (12.8, 7.2) | Размер фигуры для аналитических графиков, таких как тепловые карты или графики. |
fps | float | 30.0 | Количество кадров в секунду, используемое для расчетов скорости. |
max_hist | int | 5 | Максимальное количество исторических точек для отслеживания объекта при расчетах скорости/направления. |
meter_per_pixel | float | 0.05 | Масштабирующий коэффициент, используемый для преобразования расстояния в пикселях в реальные единицы измерения. |
max_speed | int | 120 | Максимальное ограничение скорости в визуальных оверлеях (используется в оповещениях). |
data | str | 'images' | Путь к директории изображений, используемой для поиска по сходству. |
imgsz | int | 640 | Размер входного изображения для вывода модели. |
Solutions forward some of their arguments to track, namely tracker, conf, iou, classes and device.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Задает алгоритм трекинга, который нужно использовать. Встроенные опции: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Устанавливает порог уверенности для обнаружений; более низкие значения позволяют отслеживать больше объектов, но могут включать ложные срабатывания. |
iou | float | 0.7 | Устанавливает порог Intersection over Union (IoU) для фильтрации пересекающихся детекций. |
classes | list | None | Фильтрует результаты по индексу класса. Например, classes=[0, 2, 3] отслеживает только указанные классы. |
device | str | None | Задает устройство для инференса (например, cpu, cuda:0 или 0). Позволяет пользователям выбирать между CPU, конкретным GPU или другими вычислительными устройствами для выполнения модели. |
Ты можешь использовать show_conf, show_labels и другие упомянутые аргументы для настройки визуализации.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
show | bool | False | Если True, отображает аннотированные изображения или видео в окне. Полезно для немедленной визуальной обратной связи во время разработки или тестирования. |
show_conf | bool | True | Отображает показатель уверенности для каждого обнаружения рядом с меткой. Дает представление об уверенности модели в каждом обнаружении. |
show_labels | bool | True | Отображает метки для каждого обнаружения в визуальном выводе. Обеспечивает быстрое понимание того, какие объекты были обнаружены. |
Использование SolutionAnnotator#
Все решения Ultralytics используют отдельный класс SolutionAnnotator, который расширяет основной класс Annotator, и имеют следующие методы:
| Метод | Тип возвращаемого значения | Описание |
|---|---|---|
draw_region() | None | Рисует область, используя указанные точки, цвета и толщину. |
queue_counts_display() | None | Отображает количество объектов в очереди в указанной области. |
display_analytics() | None | Отображает общую статистику для управления парковкой. |
estimate_pose_angle() | float | Вычисляет угол между тремя точками в позе объекта. |
draw_specific_kpts() | np.ndarray | Рисует определенные ключевые точки на изображении. |
plot_workout_information() | int | Рисует текстовое поле с меткой на изображении. |
plot_angle_and_count_and_stage() | None | Визуализирует угол, количество повторений и этап для мониторинга тренировок. |
plot_distance_and_line() | None | Отображает расстояние между центроидами и соединяет их линией. |
display_objects_labels() | None | Аннотирует ограничивающие рамки метками классов объектов. |
sweep_annotator() | None | Визуализирует вертикальную линию сканирования и необязательную метку. |
visioneye() | None | Сопоставляет и соединяет центроиды объектов с визуальной точкой "глаза". |
adaptive_label() | None | Рисует круглую или прямоугольную фоновую метку в центре ограничивающей рамки. |
Работа с SolutionResults#
За исключением Similarity Search, каждый вызов решения возвращает объект SolutionResults.
- Для подсчета объектов результаты включают
in_count,out_countиclasswise_count.
import cv2
from ultralytics import solutions
im0 = cv2.imread("path/to/img")
region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
counter = solutions.ObjectCounter(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.pt", # model="yolo26n-obb.pt" for object counting with OBB model.
# classes=[0, 2], # count specific classes i.e. person and car with COCO pretrained model.
# tracker="botsort.yaml" # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count) # display in_counts
print(results.out_count) # display out_counts
print(results.classwise_count) # display classwise_countОбъект SolutionResults имеет следующие атрибуты:
| Атрибут | Тип | Описание |
|---|---|---|
plot_im | np.ndarray | Изображение с визуальными наложениями, такими как счетчики, эффекты размытия или улучшения, специфичные для решения. |
in_count | int | Общее количество объектов, вошедших в определенную зону в видеопотоке. |
out_count | int | Общее количество объектов, вышедших из определенной зоны в видеопотоке. |
classwise_count | Dict[str, int] | Словарь, записывающий количество входящих/выходящих объектов по классам для расширенной аналитики. |
queue_count | int | Количество объектов, находящихся в текущий момент в предопределенной очереди или зоне ожидания (подходит для управления очередями). |
workout_count | list[int] | Подсчет повторений упражнений по трекам из AI Gym (по одной записи на каждого отслеживаемого человека). |
workout_angle | list[float] | Углы упражнений по трекам из AI Gym (по одной записи на каждого отслеживаемого человека). |
workout_stage | list[str] | Текущий этап тренировки по трекам из AI Gym (по одной записи на каждого отслеживаемого человека). |
pixels_distance | float | Расстояние в пикселях между двумя объектами или точками, например, ограничивающими рамками. (Подходит для расчета расстояния). |
available_slots | int | Количество свободных мест в контролируемой зоне (подходит для управления парковкой). |
filled_slots | int | Количество занятых мест в контролируемой зоне. (Подходит для управления парковкой) |
email_sent | bool | Указывает, было ли успешно отправлено уведомление или оповещение по электронной почте (подходит для охранной сигнализации). |
total_tracks | int | Общее количество уникальных треков объектов, наблюдаемых во время видеоанализа. |
region_counts | Dict[str, int] | Количество объектов внутри пользовательских областей или зон. |
speed_dict | Dict[str, float] | Словарь скоростей объектов по трекам, полезный для анализа скорости. |
total_crop_objects | int | Общее количество обрезанных изображений объектов, созданных решением ObjectCropper. |
speed | Dict[str, float] | Словарь, содержащий показатели производительности для отслеживания и обработки решений. |
Для получения дополнительной информации обратись к документации класса SolutionResults.
Использование решений через CLI#
Большинство решений можно использовать напрямую через интерфейс командной строки, включая:
Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone
Синтаксис
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS — обязательное ключевое слово.
- SOLUTION_NAME — это одно из значений:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking']. - ARGS (необязательно) — это пользовательские пары
arg=value, такие какshow_in=True, для переопределения параметров по умолчанию.
yolo solutions count show=True # for object counting
yolo solutions count source="path/to/video.mp4" # specify video file pathВнеси свой вклад в наши решения#
Мы приветствуем вклад сообщества! Если ты освоил определенный аспект Ultralytics YOLO, который еще не охвачен в наших решениях, мы призываем тебя поделиться своим опытом. Написание руководства — отличный способ помочь сообществу и сделать нашу документацию более полной и удобной для пользователей.
Чтобы начать, ознакомься с нашим Руководством по внесению вклада, содержащим инструкции по открытию Pull Request (PR) 🛠️. Мы с нетерпением ждем твоих вкладов!
Давай вместе сделаем экосистему Ultralytics YOLO более надежной и универсальной 🙏!
FAQ#
Ultralytics YOLO26 можно использовать для подсчета объектов в реальном времени, задействуя его расширенные возможности обнаружения объектов. Ты можешь следовать нашему подробному руководству по подсчету объектов, чтобы настроить YOLO26 для анализа видеопотока в реальном времени. Просто установи YOLO26, загрузи свою модель и обрабатывай видеокадры для динамического подсчета объектов.
Ultralytics YOLO26 улучшает охранные системы, предлагая обнаружение объектов в реальном времени и механизмы оповещения. Используя YOLO26, ты можешь создать систему охранной сигнализации, которая вызывает предупреждения при обнаружении новых объектов в зоне видеонаблюдения. Узнай, как настроить систему охранной сигнализации с помощью YOLO26 для надежного мониторинга безопасности.
Ultralytics YOLO26 может значительно улучшить системы управления очередями за счет точного подсчета и трекинга людей в очереди, помогая сократить время ожидания и оптимизировать эффективность обслуживания. Следуй нашему подробному руководству по управлению очередями, чтобы узнать, как внедрить YOLO26 для эффективного мониторинга и анализа очередей.
Да, Ultralytics YOLO26 можно эффективно использовать для мониторинга тренировок путем отслеживания и анализа фитнес-рутин в реальном времени. Это позволяет точно оценивать технику упражнений и производительность. Изучи наше руководство по мониторингу тренировок, чтобы узнать, как настроить систему мониторинга тренировок на базе ИИ с использованием YOLO26.
Ultralytics YOLO26 может генерировать тепловые карты для визуализации интенсивности данных в заданной области, выделяя зоны высокой активности или интереса. Эта функция особенно полезна для понимания закономерностей и трендов в различных задачах компьютерного зрения. Узнай больше о создании и использовании тепловых карт с помощью YOLO26 для комплексного анализа и визуализации данных.