Перейти к содержанию

Решения Ultralytics: Используйте YOLO26 для решения реальных проблем

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

Миниатюра Ultralytics Solutions



Смотреть: Как запускать решения 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 и анализировать различные фитнес-программы в реальном времени.

Аргументы решений

АргументТипПо умолчаниюОписание
modelstrNoneПуть к файлу модели Ultralytics YOLO.
regionlist'[(20, 400), (1260, 400)]'Список точек, определяющих область подсчета.
show_inboolTrueФлаг для управления отображением количества входящих объектов на видеопотоке.
show_outboolTrueФлаг для управления отображением количества исходящих объектов на видеопотоке.
analytics_typestr'line'Тип графа, т.е. line, bar, area, или pie.
colormapintcv2.COLORMAP_JETЦветовая карта для тепловой карты.
json_filestrNoneПуть к JSON-файлу, содержащему все данные о координатах парковки.
up_anglefloat145.0Пороговое значение угла для позы 'вверху'.
kptslist[int]'[6, 8, 10]'Список из трех индексов ключевых точек, используемых для мониторинга тренировок. Эти ключевые точки соответствуют суставам или частям тела, таким как плечи, локти и запястья, для таких упражнений, как отжимания, подтягивания, приседания и упражнения на пресс.
down_anglefloat90.0Пороговое значение угла для позы 'внизу'.
blur_ratiofloat0.5Регулирует процент интенсивности размытия, со значениями в диапазоне 0.1 - 1.0.
crop_dirstr'cropped-detections'Имя каталога для хранения обрезанных обнаружений.
recordsint5Общее количество обнаружений для запуска электронной почты с системой охранной сигнализации.
vision_pointtuple[int, int](20, 20)Точка, в которой зрение будет отслеживать объекты и рисовать пути, используя VisionEye Solution.
sourcestrNoneПуть к входному источнику (видео, RTSP и т. д.). Используется только с интерфейсом командной строки (CLI) Solutions.
figsizetuple[int, int](12.8, 7.2)Размер фигуры для аналитических графиков, таких как тепловые карты или графики.
fpsfloat30.0Количество кадров в секунду, используемое для расчетов скорости.
max_histint5Максимальное количество исторических точек для track на объект для вычисления скорости/направления.
meter_per_pixelfloat0.05Коэффициент масштабирования, используемый для преобразования расстояния в пикселях в физические единицы.
max_speedint120Максимальное ограничение скорости в визуальных наложениях (используется в оповещениях).
datastr'images'Путь к каталогу изображений, используемому для поиска по сходству.

Отслеживать аргументы

Решения также поддерживают некоторые аргументы из track, включая такие параметры, как conf, line_width, tracker, model, show, verbose и classes.

АргументТипПо умолчаниюОписание
trackerstr'botsort.yaml'Указывает алгоритм отслеживания, например, bytetrack.yaml или botsort.yaml.
conffloat0.1Устанавливает порог уверенности для обнаружений; более низкие значения позволяют отслеживать больше объектов, но могут включать ложные срабатывания.
ioufloat0.7Устанавливает порог Intersection over Union (IoU) для фильтрации перекрывающихся обнаружений.
classeslistNoneФильтрует результаты по индексу класса. Например, classes=[0, 2, 3] отслеживает только указанные классы.
verboseboolTrueУправляет отображением результатов отслеживания, обеспечивая визуальный вывод отслеживаемых объектов.
devicestrNoneУказывает устройство для инференса (например, cpu, cuda:0 или 0). Позволяет пользователям выбирать между CPU, конкретным GPU или другими вычислительными устройствами для выполнения модели.

Аргументы визуализации

Вы можете использовать show_conf, show_labels, и другие упомянутые аргументы для настройки визуализации.

АргументТипПо умолчаниюОписание
showboolFalseЕсли True, отображает аннотированные изображения или видео в окне. Полезно для немедленной визуальной обратной связи во время разработки или тестирования.
line_widthint or NoneNoneУказывает ширину линии ограничивающих рамок. Если None, ширина линии автоматически регулируется в зависимости от размера изображения. Обеспечивает визуальную настройку для большей четкости.
show_confboolTrueОтображает оценку достоверности для каждого обнаружения рядом с меткой. Дает представление об уверенности модели для каждого обнаружения.
show_labelsboolTrueОтображает метки для каждого обнаружения в визуальном выводе. Обеспечивает немедленное понимание обнаруженных объектов.

Использование 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_imnp.ndarrayИзображение с визуальными наложениями, такими как счетчики, эффекты размытия или специфические для решения улучшения.
in_countintОбщее количество объектов, обнаруженных при входе в определенную зону в видеопотоке.
out_countintОбщее количество объектов, обнаруженных при выходе из определенной зоны в видеопотоке.
classwise_countDict[str, int]Словарь, записывающий количество входящих/исходящих объектов по классам для расширенной аналитики.
queue_countintКоличество объектов, находящихся в данный момент в предопределенной очереди или зоне ожидания (подходит для управления очередью).
workout_countintОбщее количество повторений тренировки, выполненных во время отслеживания упражнений.
workout_anglefloatВычисление угла сустава или позы во время тренировки для оценки формы.
workout_stagestrТекущая стадия тренировки или фаза движения (например, «вверх», «вниз»).
pixels_distancefloatРасстояние между двумя объектами или точками в пикселях, например, ограничивающие рамки. (Подходит для вычисления расстояния).
available_slotsintКоличество свободных мест в контролируемой зоне (подходит для управления парковкой).
filled_slotsintКоличество занятых мест в контролируемой зоне (подходит для управления парковкой).
email_sentboolУказывает, было ли успешно отправлено уведомление или предупреждающее электронное письмо (подходит для охранной сигнализации).
total_tracksintОбщее количество уникальных треков объектов, наблюдаемых во время анализа видео.
region_countsDict[str, int]Подсчет объектов в определяемых пользователем регионах или зонах.
speed_dictDict[str, float]Словарь скоростей объектов по трекам, полезный для анализа скорости.
total_crop_objectsintОбщее количество обрезанных изображений объектов, сгенерированных решением ObjectCropper.
speedDict[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 для всестороннего анализа и визуализации данных.



📅 Создано 1 год назад ✏️ Обновлено 4 дней назад
RizwanMunawarglenn-jocherLaughing-qUltralyticsAssistant

Комментарии