Przewodnik wykrywania punktów orientacyjnych utrzymywania pozycji

Zadanie MediaPipe Pose Markuper umożliwia wykrywanie punktów orientacyjnych ludzkich ciał na zdjęciach lub film. Możesz użyć tego zadania, aby zidentyfikować kluczowe lokalizacje ciała, przeanalizować postawę i kategoryzować ruchy. W tym zadaniu używane są modele systemów uczących się, które z pojedynczymi obrazami lub filmami. Zadanie generuje na obrazie punkty orientacyjne w pozycji ciała i trójwymiarowych współrzędnych świata.

Wypróbuj!

Rozpocznij

Aby zacząć korzystać z tego zadania, postępuj zgodnie z przewodnikiem po implementacji platformy docelowej. Te przewodniki dotyczące konkretnych platform przeprowadzą Cię przez wdrożenie tego zadania, w tym zalecany model i przykładowy kod z zalecanymi opcjami konfiguracji:

Szczegóły zadania

W tej sekcji opisujemy możliwości, dane wejściowe, wyjściowe i konfigurację. aby wykonać tę czynność.

Funkcje

  • Przetwarzanie obrazu – przetwarzanie obejmuje obrót obrazu, zmianę rozmiaru, normalizację i konwertowanie przestrzeni kolorów.
  • Próg wyniku – filtruj wyniki na podstawie wyników prognozy.
Dane wejściowe zadania Wyniki zadania
Punkt orientacyjny pozycji akceptuje dane wejściowe jednego z tych typów danych:
  • Nieruchome obrazy
  • Zdekodowane klatki filmu
  • Obraz na żywo
Punkt orientacyjny pozycji wyświetla te wyniki:
  • Pozycjonowanie punktów orientacyjnych w znormalizowanych współrzędnych obrazu
  • Ustawianie punktów orientacyjnych we współrzędnych świata
  • Opcjonalnie: maska segmentacji dla ułożenia.

Opcje konfiguracji

To zadanie zawiera te opcje konfiguracji:

Nazwa opcji Opis Zakres wartości Wartość domyślna
running_mode Ustawia tryb działania zadania. Są trzy tryby:

IMAGE: tryb wprowadzania pojedynczego obrazu.

WIDEO: tryb zdekodowanych klatek filmu.

LIVE_STREAM: tryb transmisji danych wejściowych na przykład z kamery. W tym trybie detektor wyników musi mieć wartość wywołano, aby skonfigurować detektor i otrzymywać wyniki asynchronicznie.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_poses Maksymalna liczba pozycji, które może wykryć Punkt orientacyjny. Integer > 0 1
min_pose_detection_confidence Minimalny wskaźnik ufności, od którego wymagane jest wykrywanie pozycji została uznana za udaną. Float [0.0,1.0] 0.5
min_pose_presence_confidence Minimalny wskaźnik ufności obecności pozycji podczas wykrywania punktów orientacyjnych. Float [0.0,1.0] 0.5
min_tracking_confidence Minimalny wynik ufności dla śledzenia pozycji można uznać za udany. Float [0.0,1.0] 0.5
output_segmentation_masks Określa, czy punkt orientacyjny położenia tworzy maskę segmentacji dla wykrytego w pozycji. Boolean False
result_callback Konfiguruje detektor wyników tak, aby odbierał wyniki z punktu orientacyjnego asynchronicznie wtedy, gdy Pose Valueer jest w trybie transmisji na żywo. Tej opcji można używać tylko wtedy, gdy tryb działania jest ustawiony na LIVE_STREAM ResultListener N/A

Modele

Punkt orientacyjny pozycji wykorzystuje serię modeli do przewidywania punktów orientacyjnych pozycji. Pierwszy wykrywa obecność ludzkich ciał w ramce obrazu, model określa punkty orientacyjne na ciałach.

Następujące modele są połączone w pakiet do pobrania:

  • Model wykrywania pozycji: wykrywa obecność ciał w kilku kluczowych pozycjach punkty orientacyjne.
  • Ułóż model punktu orientacyjnego: dodaje pełne mapowanie położenia. Model zwraca szacunkowe 33 trójwymiarowe punkty orientacyjne pozycji.

Ten pakiet wykorzystuje splotową sieć neuronowa podobny do MobileNetV2 i zoptymalizowany dla aplikacji do fitnessu w czasie rzeczywistym. Ten wariant Model BlazePose wykorzystuje GHUM potoku modelowania 3D sylwetek człowieka, który pozwala oszacować pełną pozycję ciała w 3D widoczne na zdjęciach lub filmach.

Pakiet modeli Wpisz kształt Typ danych Karty modeli Wersje
Punkt orientacyjny pozycjonowania (wersja uproszczona) Wykrywanie pozycji: 224 x 224 x 3
Punkt orientacyjny pozycji: 256 x 256 x 3
liczba zmiennoprzecinkowa 16 informacje Najnowsze
Punkt orientacyjny umiejscowienia (pełny) Wykrywanie pozycji: 224 x 224 x 3
Punkt orientacyjny pozycji: 256 x 256 x 3
liczba zmiennoprzecinkowa 16 informacje Najnowsze
Punkt orientacyjny do przedstawiania pozycji (ciężki) Wykrywanie pozycji: 224 x 224 x 3
Punkt orientacyjny pozycji: 256 x 256 x 3
liczba zmiennoprzecinkowa 16 informacje Najnowsze

Model punktu orientacyjnego umiejscowionego w pozycji

Model punktów orientacyjnych ułożenia śledzi 33 miejsca punktów orientacyjnych ciała, które reprezentują przybliżone umiejscowienie następujących części ciała:

Dane wyjściowe modelu zawierają zarówno znormalizowane współrzędne (Landmarks), jak i świat (WorldLandmarks) każdego punktu orientacyjnego.

0 - nose
1 - left eye (inner)
2 - left eye
3 - left eye (outer)
4 - right eye (inner)
5 - right eye
6 - right eye (outer)
7 - left ear
8 - right ear
9 - mouth (left)
10 - mouth (right)
11 - left shoulder
12 - right shoulder
13 - left elbow
14 - right elbow
15 - left wrist
16 - right wrist
17 - left pinky
18 - right pinky
19 - left index
20 - right index
21 - left thumb
22 - right thumb
23 - left hip
24 - right hip
25 - left knee
26 - right knee
27 - left ankle
28 - right ankle
29 - left heel
30 - right heel
31 - left foot index
32 - right foot index