Meet YOLO26: next-gen vision AI.

Link to this sectionПодсчет объектов в различных регионах с помощью Ultralytics YOLO 🚀#

Link to this sectionЧто такое подсчет объектов в регионах?#

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



Watch: Object Counting in Different Regions using Ultralytics YOLO26 | Ultralytics Solutions 🚀

Link to this sectionПреимущества подсчета объектов в регионах#

  • Точность и аккуратность: Подсчет объектов в регионах с помощью передового компьютерного зрения обеспечивает точные и достоверные результаты, минимизируя ошибки, часто возникающие при ручном подсчете.
  • Повышение эффективности: Автоматизированный подсчет объектов повышает операционную эффективность, предоставляя результаты в реальном времени и оптимизируя процессы в различных приложениях.
  • Универсальность и применение: Универсальность подсчета объектов в регионах делает его применимым в самых разных областях — от производства и наблюдения до мониторинга дорожного движения, что способствует его широкому использованию и эффективности.

Link to this sectionРеальные сценарии применения#

РитейлРыночные улицы
Подсчет людей в различных регионах с помощью Ultralytics YOLO26Подсчет толпы в различных регионах с помощью Ultralytics YOLO26
Подсчет людей в различных регионах с помощью Ultralytics YOLO26Подсчет толпы в различных регионах с помощью Ultralytics YOLO26

Link to this sectionПримеры использования#

Региональный подсчет с использованием Ultralytics YOLO
 import cv2

 from ultralytics import solutions

 cap = cv2.VideoCapture("path/to/video.mp4")
 assert cap.isOpened(), "Error reading video file"

 # Pass region as list
 # region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

 # Pass region as dictionary
 region_points = {
     "region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
     "region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
 }

 # Video writer
 w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
 video_writer = cv2.VideoWriter("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

 # Initialize region counter object
 regioncounter = solutions.RegionCounter(
     show=True,  # display the frame
     region=region_points,  # pass region points
     model="yolo26n.pt",  # model for counting in regions, e.g., yolo26s.pt
 )

 # Process video
 while cap.isOpened():
     success, im0 = cap.read()

     if not success:
         print("Video frame is empty or processing is complete.")
         break

     results = regioncounter(im0)

     # print(results)  # access the output

     video_writer.write(results.plot_im)

 cap.release()
 video_writer.release()
 cv2.destroyAllWindows()  # destroy all opened windows
Пример кода Ultralytics

Модуль регионального подсчета Ultralytics доступен в нашем разделе примеров. Ты можешь изучить этот пример для адаптации кода и изменить его под свои конкретные задачи.

Link to this sectionАргументы RegionCounter#

Ниже представлена таблица с аргументами RegionCounter:

АргументТипПо умолчаниюОписание
modelstrNoneПуть к файлу модели Ultralytics YOLO.
regionlist'[(20, 400), (1260, 400)]'Список точек, определяющих область подсчета.

Решение RegionCounter позволяет использовать параметры отслеживания объектов:

АргументТипПо умолчаниюОписание
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 или другими вычислительными устройствами для выполнения модели.

Кроме того, поддерживаются следующие настройки визуализации:

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

Link to this sectionFAQ#

Link to this sectionЧто такое подсчет объектов в заданных регионах с помощью Ultralytics YOLO26?#

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

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

Следуй этим шагам, чтобы запустить подсчет объектов в Ultralytics YOLO26:

  1. Клонируй репозиторий Ultralytics и перейди в нужную директорию:

    git clone https://github.com/ultralytics/ultralytics
    cd ultralytics/examples/YOLOv8-Region-Counter
  2. Запусти скрипт регионального подсчета:

    python yolov8_region_counter.py --source "path/to/video.mp4" --save-img

Для получения дополнительных опций посети раздел Примеры использования.

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

Использование Ultralytics YOLO26 для подсчета объектов в регионах дает несколько преимуществ:

  1. Обработка в реальном времени: Архитектура YOLO26 обеспечивает быстрое выполнение инференса, что делает ее идеальной для приложений, требующих немедленных результатов подсчета.
  2. Гибкое определение регионов: Решение позволяет определять несколько пользовательских областей в виде многоугольников, прямоугольников или линий для удовлетворения твоих конкретных нужд мониторинга.
  3. Поддержка нескольких классов: Считай различные типы объектов одновременно в одних и тех же регионах, получая комплексную аналитику.
  4. Возможности интеграции: Легко интегрируй решение с существующими системами через Python API или интерфейс командной строки Ultralytics.

Узнай о более глубоких преимуществах в разделе Преимущества.

Link to this sectionКаковы реальные сценарии применения подсчета объектов в регионах?#

Подсчет объектов с Ultralytics YOLO26 может применяться во многих реальных сценариях:

  • Розничная аналитика: Считай покупателей в разных секциях магазина, чтобы оптимизировать планировку и график работы персонала.
  • Управление дорожным движением: Мониторь поток транспортных средств на определенных сегментах дороги или перекрестках.
  • Производство: Отслеживай перемещение продукции по разным производственным зонам.
  • Складские операции: Считай товарные запасы в отведенных складских зонах.
  • Общественная безопасность: Контролируй плотность толпы в определенных зонах во время мероприятий.

Изучи другие примеры в разделе Реальные приложения и решение TrackZone для дополнительных возможностей мониторинга по зонам.

Комментарии