Files
HPE_mediapipe/README.md
2021-11-29 14:28:49 +07:00

79 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Human Pose Estimation with mediapipe
## Запуск
Для тестового запуска через вебкамеру с индексом 0.
```console
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):
```console
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