Использование OpenCV и дескриптора HOG | от Круио

Обнаружение человека в режиме реального времени – важное приложение компьютерного зрения, которое включает в себя идентификацию человеческих фигур на изображении, видео или в прямом эфире с камеры. Приведенный здесь сценарий обнаружения человека в реальном времени использует дескрипторы OpenCV и HOG для обнаружения и рисования прямоугольника вокруг человеческих фигур в заданном вводе.

Сценарий предоставляет три способа обнаружения людей: по изображению, видео или прямой трансляции с камеры. Если в качестве входных данных используется изображение, скрипт обнаруживает человеческие фигуры и рисует вокруг них рамку, сохраняя вывод как новое изображение. Если используется видеофайл, сценарий считывает каждый кадр и применяет тот же алгоритм обнаружения, сохраняя выходные данные в виде нового видеофайла, если указан выходной путь. Если используется трансляция с камеры в режиме реального времени, скрипт постоянно считывает данные с камеры и применяет алгоритм обнаружения к видеотрансляции в режиме реального времени.

Алгоритм обнаружения людей, используемый в скрипте, основан на дескрипторах HOG, которые представляют собой функции машинного обучения, помогающие идентифицировать человеческие фигуры. Сценарий устанавливает объект дескриптора HOG и указывает детектор людей по умолчанию с помощью функции setSVMDetector(). Затем функция detectMultiScale() используется для применения объекта дескриптора HOG к входному изображению или видеокадру для обнаружения человеческих фигур.

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

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

ТРЕБОВАНИЯ:

Напишите это в терминале, чтобы установить эти библиотеки:

pip install opencv-python
pip install imutils

ВХОДЫ:

  • Для изображения: введите этот код в терминал с адресом изображения
python rthd.py -i "[image file]"
  • Для видео: введите этот код в терминал с адресом видео
python rthd.py -v "[video file]"
  • Для камеры (веб-камеры): введите этот код в терминал
python rthd.py -c true

ВЫХОД:

- Изображение

- Видео

- Веб-камера

Примечание. Чтобы выйти из запущенного процесса —нажмите «q».

Спасибо и наслаждайтесь наукой о данных и кодированием 😉