Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics Solutions: используй YOLO26 для решения реальных задач#

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

Миниатюра Ultralytics Solutions



Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀

Link to this sectionРешения#

Вот наш тщательно отобранный список решений Ultralytics, которые ты можешь использовать для создания классных проектов по компьютерному зрению.

  • Аналитика: проводи комплексный анализ данных, чтобы выявлять закономерности и принимать обоснованные решения, используя YOLO26 для дескриптивной, предиктивной и прескриптивной аналитики.
  • Расчет расстояния: вычисляй расстояния между объектами, используя центроиды ограничивающих рамок в YOLO26, что необходимо для пространственного анализа.
  • Тепловые карты: используй тепловые карты обнаружения для визуализации интенсивности данных по матрице, обеспечивая четкое понимание в задачах компьютерного зрения.
  • Сегментация экземпляров с отслеживанием объектов: внедряй сегментацию экземпляров и отслеживание объектов с помощью YOLO26 для получения точных границ объектов и непрерывного мониторинга.
  • Live Inference со Streamlit: используй мощь YOLO26 для обнаружения объектов в режиме реального времени прямо в браузере с помощью удобного интерфейса Streamlit.
  • Размытие объектов: применяй размытие объектов с помощью YOLO26 для защиты конфиденциальности при обработке изображений и видео.
  • Подсчет объектов: научись выполнять подсчет объектов в режиме реального времени с помощью YOLO26. Получи опыт для точного подсчета объектов в потоках живого видео.
  • Подсчет объектов в регионах: считай объекты в определенных зонах, используя YOLO26 для точного обнаружения в различных областях.
  • Обрезка объектов: освой обрезку объектов с помощью YOLO26 для точного извлечения объектов из изображений и видео.
  • Управление парковкой: организуй и направляй поток транспортных средств на парковках с помощью YOLO26, оптимизируя использование пространства и улучшая пользовательский опыт.
  • Управление очередями: внедряй эффективные системы управления очередями, чтобы минимизировать время ожидания и повысить производительность с помощью YOLO26.
  • Система охранной сигнализации: создай систему сигнализации с YOLO26, которая запускает оповещения при обнаружении новых объектов. Настрой систему под свои конкретные нужды.
  • Similarity Search: Включи интеллектуальный поиск изображений, объединив эмбеддинги OpenAI CLIP с поиском по косинусному сходству, что позволит тебе использовать запросы на естественном языке, такие как "человек с сумкой" или "движущиеся транспортные средства".
  • Оценка скорости: оценивай скорость объектов с помощью YOLO26 и методов отслеживания объектов, что крайне важно для таких приложений, как автономные транспортные средства и мониторинг дорожного движения.
  • Отслеживание объектов в зоне: узнай, как отслеживать объекты внутри определенных зон видеокадров с помощью YOLO26 для точного и эффективного мониторинга.
  • Картографирование объектов через VisionEye View: разрабатывай системы, имитирующие фокусировку человеческого глаза на конкретных объектах, улучшая способность компьютера различать и расставлять приоритеты в деталях.
  • Мониторинг тренировок: узнай, как отслеживать тренировки с помощью YOLO26. Научись отслеживать и анализировать различные фитнес-упражнения в режиме реального времени.

Link to this sectionАргументы решений#

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

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

АргументТипПо умолчаниюОписание
trackerstr'botsort.yaml'Указывает алгоритм отслеживания, который нужно использовать. Встроенные опции: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.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Отображает метки для каждого обнаружения в визуальном выводе. Обеспечивает быстрое понимание того, какие объекты были обнаружены.

Link to this sectionИспользование 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Рисует круглую или прямоугольную фоновую метку в центре ограничивающей рамки.

Link to this sectionРабота с 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 | list[int]Общее количество повторений упражнения или количество для каждого человека из AI Gym.
workout_anglefloat | list[float]Вычисленный угол сустава или позы, либо углы для каждого человека из AI Gym.
workout_stagestr | list[str]Текущий этап тренировки или этапы для каждого человека из AI Gym.
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.

Link to this sectionИспользование решений через 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

Link to this sectionВнеси свой вклад в наши решения#

Мы приветствуем вклад сообщества! Если ты освоил определенный аспект Ultralytics YOLO, который еще не охвачен в наших решениях, мы призываем тебя поделиться своим опытом. Написание руководства — отличный способ помочь сообществу и сделать нашу документацию более полной и удобной для пользователей.

Чтобы начать, пожалуйста, прочти наше Руководство по участию, где описаны рекомендации по открытию Pull Request (PR) 🛠️. Мы с нетерпением ждем твоего вклада!

Давай вместе сделаем экосистему Ultralytics YOLO более надежной и универсальной 🙏!

Link to this sectionFAQ#

Link to this sectionКак я могу использовать Ultralytics YOLO для подсчета объектов в реальном времени?#

Ultralytics YOLO26 можно использовать для подсчета объектов в реальном времени, задействуя его расширенные возможности обнаружения объектов. Ты можешь следовать нашему подробному руководству по подсчету объектов, чтобы настроить YOLO26 для анализа живого видеопотока. Просто установи YOLO26, загрузи свою модель и обрабатывай кадры видео для динамического подсчета объектов.

Link to this sectionКаковы преимущества использования Ultralytics YOLO для систем безопасности?#

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

Link to this sectionКак Ultralytics YOLO может улучшить системы управления очередями?#

Ultralytics YOLO26 может значительно улучшить системы управления очередями за счет точного подсчета и отслеживания людей в очереди, тем самым помогая сократить время ожидания и оптимизировать эффективность обслуживания. Следуй нашему подробному руководству по управлению очередями, чтобы узнать, как внедрить YOLO26 для эффективного мониторинга и анализа очередей.

Link to this sectionМожно ли использовать Ultralytics YOLO для мониторинга тренировок?#

Да, Ultralytics YOLO26 можно эффективно использовать для мониторинга тренировок путем отслеживания и анализа фитнес-упражнений в реальном времени. Это позволяет точно оценивать технику выполнения и эффективность. Изучи наше руководство по мониторингу тренировок, чтобы узнать, как настроить систему мониторинга тренировок на базе ИИ с использованием YOLO26.

Link to this sectionКак Ultralytics YOLO помогает в создании тепловых карт для визуализации данных?#

Ultralytics YOLO26 может генерировать тепловые карты для визуализации интенсивности данных в заданной области, выделяя регионы с высокой активностью или интересом. Эта функция особенно полезна для понимания паттернов и трендов в различных задачах компьютерного зрения. Узнай больше о создании и использовании тепловых карт с YOLO26 для комплексного анализа и визуализации данных.

Комментарии