Решения Ultralytics: Используйте YOLO26 для решения реальных проблем
Решения Ultralytics предоставляют передовые приложения моделей YOLO, предлагая реальные решения, такие как подсчет объектов, размытие и системы безопасности, повышая эффективность и точность в различных отраслях. Откройте для себя мощь YOLO26 для практических и эффективных реализаций.
![]()
Смотреть: Как запускать решения Ultralytics из командной строки (CLI) | Ultralytics YOLO26 🚀
Решения
Вот наш тщательно подобранный список решений Ultralytics, которые можно использовать для создания потрясающих проектов в области компьютерного зрения.
- Аналитика: Проводите всесторонний анализ данных для выявления закономерностей и принятия обоснованных решений, используя YOLO26 для описательной, предиктивной и предписывающей аналитики.
- Расчет расстояния: Рассчитывайте расстояния между объектами, используя центроиды ограничивающих рамок в YOLO26, что крайне важно для пространственного анализа.
- Тепловые карты: Используйте тепловые карты обнаружения для визуализации интенсивности данных по матрице, обеспечивая четкое понимание задач компьютерного зрения.
- Сегментация экземпляров с отслеживанием объектов: Реализуйте сегментацию экземпляров и track объектов с помощью YOLO26 для достижения точных границ объектов и непрерывного мониторинга.
- Инференс в реальном времени со Streamlit: Используйте мощь YOLO26 для detect объектов в реальном времени непосредственно через ваш веб-браузер с помощью удобного интерфейса Streamlit.
- Размытие объектов: Применяйте размытие объектов с использованием YOLO26 для защиты конфиденциальности при обработке изображений и видео.
- Подсчет объектов: Научитесь выполнять подсчет объектов в реальном времени с помощью YOLO26. Получите опыт для точного подсчета объектов в видеопотоках в реальном времени.
- Подсчет объектов в регионах: Подсчитывайте объекты в определенных регионах с использованием YOLO26 для точного detect в различных областях.
- Обрезка объектов: Освойте обрезку объектов с помощью YOLO26 для точного извлечения объектов из изображений и видео.
- Управление парковкой: Организуйте и направляйте поток транспортных средств на парковках с помощью YOLO26, оптимизируя использование пространства и пользовательский опыт.
- Управление очередями: Внедряйте эффективные системы управления очередями для минимизации времени ожидания и повышения производительности с использованием YOLO26.
- Система охранной сигнализации: Создайте систему охранной сигнализации с YOLO26, которая срабатывает при detect новых объектов. Настройте систему в соответствии с вашими конкретными потребностями.
- Поиск по сходству: Обеспечьте интеллектуальный поиск изображений путем объединения эмбеддингов OpenAI CLIP с Meta FAISS, позволяя выполнять запросы на естественном языке, такие как «человек с сумкой» или «движущиеся транспортные средства».
- Оценка скорости: Оценивайте скорость объектов, используя YOLO26 и методы track объектов, что критически важно для таких приложений, как автономные транспортные средства и мониторинг дорожного движения.
- track объектов в зоне: Узнайте, как track объекты в определенных зонах видеокадров, используя YOLO26 для точного и эффективного мониторинга.
- VisionEye View Objects Mapping: Разрабатывайте системы, имитирующие фокусировку человеческого глаза на определенных объектах, расширяя возможности компьютера по различению и приоритизации деталей.
- Мониторинг тренировок: Узнайте, как отслеживать тренировки с помощью YOLO26. Научитесь track и анализировать различные фитнес-программы в реальном времени.
Аргументы решений
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
model | str | None | Путь к файлу модели Ultralytics YOLO. |
region | list | '[(20, 400), (1260, 400)]' | Список точек, определяющих область подсчета. |
show_in | bool | True | Флаг для управления отображением количества входящих объектов на видеопотоке. |
show_out | bool | True | Флаг для управления отображением количества исходящих объектов на видеопотоке. |
analytics_type | str | 'line' | Тип графа, т.е. line, bar, area, или pie. |
colormap | int | cv2.COLORMAP_JET | Цветовая карта для тепловой карты. |
json_file | str | None | Путь к JSON-файлу, содержащему все данные о координатах парковки. |
up_angle | float | 145.0 | Пороговое значение угла для позы 'вверху'. |
kpts | list[int] | '[6, 8, 10]' | Список из трех индексов ключевых точек, используемых для мониторинга тренировок. Эти ключевые точки соответствуют суставам или частям тела, таким как плечи, локти и запястья, для таких упражнений, как отжимания, подтягивания, приседания и упражнения на пресс. |
down_angle | float | 90.0 | Пороговое значение угла для позы 'внизу'. |
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 Solution. |
source | str | None | Путь к входному источнику (видео, RTSP и т. д.). Используется только с интерфейсом командной строки (CLI) Solutions. |
figsize | tuple[int, int] | (12.8, 7.2) | Размер фигуры для аналитических графиков, таких как тепловые карты или графики. |
fps | float | 30.0 | Количество кадров в секунду, используемое для расчетов скорости. |
max_hist | int | 5 | Максимальное количество исторических точек для track на объект для вычисления скорости/направления. |
meter_per_pixel | float | 0.05 | Коэффициент масштабирования, используемый для преобразования расстояния в пикселях в физические единицы. |
max_speed | int | 120 | Максимальное ограничение скорости в визуальных наложениях (используется в оповещениях). |
data | str | 'images' | Путь к каталогу изображений, используемому для поиска по сходству. |
Отслеживать аргументы
Решения также поддерживают некоторые аргументы из track, включая такие параметры, как conf, line_width, tracker, model, show, verbose и classes.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Указывает алгоритм отслеживания, например, bytetrack.yaml или botsort.yaml. |
conf | float | 0.1 | Устанавливает порог уверенности для обнаружений; более низкие значения позволяют отслеживать больше объектов, но могут включать ложные срабатывания. |
iou | float | 0.7 | Устанавливает порог Intersection over Union (IoU) для фильтрации перекрывающихся обнаружений. |
classes | list | None | Фильтрует результаты по индексу класса. Например, classes=[0, 2, 3] отслеживает только указанные классы. |
verbose | bool | True | Управляет отображением результатов отслеживания, обеспечивая визуальный вывод отслеживаемых объектов. |
device | str | None | Указывает устройство для инференса (например, cpu, cuda:0 или 0). Позволяет пользователям выбирать между CPU, конкретным GPU или другими вычислительными устройствами для выполнения модели. |
Аргументы визуализации
Вы можете использовать show_conf, show_labels, и другие упомянутые аргументы для настройки визуализации.
| Аргумент | Тип | По умолчанию | Описание |
|---|---|---|---|
show | bool | False | Если True, отображает аннотированные изображения или видео в окне. Полезно для немедленной визуальной обратной связи во время разработки или тестирования. |
line_width | int or None | None | Указывает ширину линии ограничивающих рамок. Если None, ширина линии автоматически регулируется в зависимости от размера изображения. Обеспечивает визуальную настройку для большей четкости. |
show_conf | bool | True | Отображает оценку достоверности для каждого обнаружения рядом с меткой. Дает представление об уверенности модели для каждого обнаружения. |
show_labels | bool | True | Отображает метки для каждого обнаружения в визуальном выводе. Обеспечивает немедленное понимание обнаруженных объектов. |
Использование SolutionAnnotator
Все решения Ultralytics используют отдельный класс SolutionAnnotator, который расширяет основной Annotator class и имеет следующие методы:
| Метод | Тип возвращаемого значения | Описание |
|---|---|---|
draw_region() | None | Рисует область, используя указанные точки, цвета и толщину. |
queue_counts_display() | None | Отображает количество очередей в указанном регионе. |
display_analytics() | None | Отображает общую статистику для управления парковкой. |
estimate_pose_angle() | float | Вычисляет угол между тремя точками в позе объекта. |
draw_specific_points() | None | Рисует определенные ключевые точки на изображении. |
plot_workout_information() | None | Рисует текстовое поле с меткой на изображении. |
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, каждый вызов Solution возвращает список SolutionResults объект.
- Для подсчета объектов результаты включают
in_count,out_countиclasswise_count.
SolutionResults
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 | int | Общее количество повторений тренировки, выполненных во время отслеживания упражнений. |
workout_angle | float | Вычисление угла сустава или позы во время тренировки для оценки формы. |
workout_stage | str | Текущая стадия тренировки или фаза движения (например, «вверх», «вниз»). |
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
Синтаксис
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS — это обязательное ключевое слово.
- SOLUTION_NAME является одним из:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye']. - 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 более надежной и универсальной 🙏!
Часто задаваемые вопросы
Как я могу использовать Ultralytics YOLO для подсчета объектов в реальном времени?
Ultralytics YOLO26 может использоваться для подсчета объектов в реальном времени благодаря своим расширенным возможностям detect объектов. Вы можете ознакомиться с нашим подробным руководством по подсчету объектов, чтобы настроить YOLO26 для анализа видеопотока в реальном времени. Просто установите YOLO26, загрузите свою модель и обрабатывайте видеокадры для динамического подсчета объектов.
Каковы преимущества использования Ultralytics YOLO для систем безопасности?
Ultralytics YOLO26 улучшает системы безопасности, предлагая detect объектов в реальном времени и механизмы оповещения. Используя YOLO26, вы можете создать систему охранной сигнализации, которая срабатывает при detect новых объектов в зоне наблюдения. Узнайте, как настроить систему охранной сигнализации с YOLO26 для надежного мониторинга безопасности.
Как Ultralytics YOLO может улучшить системы управления очередями?
Ultralytics YOLO26 может значительно улучшить системы управления очередями путем точного подсчета и track людей в очередях, тем самым помогая сократить время ожидания и оптимизировать эффективность обслуживания. Ознакомьтесь с нашим подробным руководством по управлению очередями, чтобы узнать, как внедрить YOLO26 для эффективного мониторинга и анализа очередей.
Можно ли использовать Ultralytics YOLO для мониторинга тренировок?
Да, Ultralytics YOLO26 может эффективно использоваться для мониторинга тренировок путем track и анализа фитнес-программ в реальном времени. Это позволяет точно оценивать форму выполнения упражнений и производительность. Изучите наше руководство по мониторингу тренировок, чтобы узнать, как настроить систему мониторинга тренировок на базе ИИ с использованием YOLO26.
Как Ultralytics YOLO помогает в создании тепловых карт для визуализации данных?
Ultralytics YOLO26 может генерировать тепловые карты для визуализации интенсивности данных в заданной области, выделяя области высокой активности или интереса. Эта функция особенно полезна для понимания закономерностей и тенденций в различных задачах компьютерного зрения. Узнайте больше о создании и использовании тепловых карт с YOLO26 для всестороннего анализа и визуализации данных.