2021-12-08 13:00:46 +07:00
2021-11-26 01:47:03 +07:00
2021-12-03 19:17:49 +07:00
2021-12-03 19:17:49 +07:00
2021-11-26 01:47:03 +07:00
2021-11-29 22:51:18 +07:00
2021-11-26 01:47:03 +07:00
2021-12-03 19:17:49 +07:00
2021-12-08 13:00:46 +07:00
2021-11-29 14:28:49 +07:00

Human Pose Estimation with mediapipe

Запуск

Для тестового запуска через вебкамеру с индексом 0.

python3 hpe_json.py --address_input 0 --show_image True

Скрипт принимает следующие аргументы:

  • '--address_input' (type=str, default="0"): путь к файлу или индекс вебкамеры
  • '--scale_pose' (type=float, default=0.42): ширина плеч в метрической системе
  • '--crop_image' (type=float, default=1.0): коэффициент, если нужно изменить размер изображения
  • '--osc_address' (type=str, default="0.0.0.0"): ip-адрес для osc клиента
  • '--osc_port' (type=int, default="5005"): порт для osc клиента
  • '--osc_message_address' (type=str, default="/pose/0"): адрес для вывода сообщения через osc клиент
  • '--output_method' (type=str, default='file', choices=['file', 'osc']): тип вывода через файл или osc клиент
  • '--mirror_image' (type=bool, default=True): горизнтальное отображение выходного изображения
  • '--show_image' (type=bool, default=False): вывод выходного изображения через opencv

Для теста с matplotlib нужно запустить скрипт (пример с вебкамерой с индексом 0):

python3 hpe_videocapture.py 0

Зависимости

Библиотеки python:

  • mediapipe
  • numpy
  • matplotlib (можно сделать опциональной)
  • opencv-python
  • json
  • python-osc

Библиотека mediapipe требует cudatoolkit и cudnn для работы с gpu.

Интерфейс для hpe_videocapture

Для разовой отрисовки точек в 3D с помощью matplotlib необходимо нажать клавишу 'm'.

Чтобы записать сконвертированные данные в модель UE4 в файл 'hierarchy_data.json', нужно нажать клавишу 'j'.

Для закрытия программы нужно нажать клавишу 'esc'.

Требования к постановке эксперимента

  • Человек в кадре должен быть один.
  • Камера примерно должна быть под углом 90 градусов.
  • Человек должен входить в кадр целиком.
  • Желательно, чтобы у одежда на человеке были хорошо видны контуры.

Сборка на Windows

В разработке

Config file

В разработке.

Предположительные переменные.

Параметры класса hpe_mp_class из hpe_mp_class.py:

  • hands_static_image_mode = False
  • hands_max_num_hands = 2
  • hands_min_detection_confidence = 0.7
  • hands_min_tracking_confidence = 0.5
  • pose_static_image_mode = False
  • pose_upper_body_only = False
  • pose_smooth_landmarks = True
  • pose_min_detection_confidence = 0.7
  • pose_min_tracking_confidence = 0.5
  • hol_static_image_mode = False
  • hol_upper_body_only = False
  • hol_smooth_landmarks = True
  • hol_min_detection_confidence = 0.7
  • hol_min_tracking_confidence = 0.5
Description
Скрипт на python для работы с библиотекой mediapipe и конвертации в модель UE4
Readme 173 KiB
Languages
Python 100%