Przewodnik wykrywania punktów orientacyjnych twarzy

Zadanie Face Landmarker

Zadanie MediaPipe Face Landmarker umożliwia wykrywanie punktów charakterystycznych twarzy i mimiki na obrazach i w filmach. Możesz używać tego interfejsu do rozpoznawania ludzkich wyrazów twarzy, stosowania filtrów i efektów do twarzy oraz tworzenia wirtualnych awatarów. To zadanie korzysta z modeli uczenia maszynowego, które mogą przetwarzać pojedyncze obrazy lub ciągły strumień obrazów. Zadanie zwraca trójwymiarowe punkty charakterystyczne twarzy, wyniki blendshape (współczynniki reprezentujące mimikę) do wnioskowania o szczegółowych powierzchniach twarzy w czasie rzeczywistym oraz macierze przekształceń do wykonywania przekształceń wymaganych do renderowania efektów.

Wypróbuj

Rozpocznij

Aby zacząć korzystać z tego zadania, postępuj zgodnie z jednym z przewodników po implementacji dla Twojej platformy docelowej. Te przewodniki dotyczące poszczególnych platform zawierają podstawowe informacje o wdrażaniu tego zadania, w tym zalecany model i przykładowy kod z zalecanymi opcjami konfiguracji:

Szczegóły działania

W tej sekcji opisujemy możliwości, dane wejściowe, dane wyjściowe i opcje konfiguracji tego zadania.

Funkcje

  • Przetwarzanie obrazu wejściowego – przetwarzanie obejmuje obracanie obrazu, zmianę rozmiaru, normalizację i konwersję przestrzeni kolorów.
  • Próg wyniku – filtruj wyniki na podstawie wyników prognozy.
Dane wejściowe zadania Dane wyjściowe działania
Model Face Landmarker akceptuje dane wejściowe w jednym z tych typów:
  • w przypadku obrazów nieruchomych,
  • Dekodowane klatki wideo
  • Transmisja wideo na żywo
Model Face Landmarker zwraca te wyniki:
  • Kompletna siatka twarzy dla każdej wykrytej twarzy, z wynikami kształtów mieszanych oznaczającymi wyraz twarzy i współrzędnymi punktów charakterystycznych twarzy.
  • Kształt twarzy i macierze transformacji twarzy

Opcje konfiguracji

To zadanie ma te opcje konfiguracji:

Nazwa opcji Opis Zakres wartości Wartość domyślna
running_mode Ustawia tryb działania zadania. Dostępne są 3 tryby:

OBRAZ: tryb dla pojedynczych obrazów.

WIDEO: tryb dla zdekodowanych klatek filmu.

LIVE_STREAM: tryb transmisji na żywo danych wejściowych, np. z kamery. W tym trybie należy wywołać funkcję resultListener, aby skonfigurować odbiornik do asynchronicznego odbierania wyników.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_faces Maksymalna liczba twarzy, które mogą być wykrywane przez FaceLandmarker. Wygładzanie jest stosowane tylko wtedy, gdy wartość parametru num_faces wynosi 1. Integer > 0 1
min_face_detection_confidence Minimalny poziom ufności, przy którym wykrywanie twarzy jest uznawane za udane. Float [0.0,1.0] 0.5
min_face_presence_confidence Minimalny poziom ufności wykrycia twarzy. Float [0.0,1.0] 0.5
min_tracking_confidence Minimalny poziom ufności, przy którym śledzenie twarzy jest uznawane za udane. Float [0.0,1.0] 0.5
output_face_blendshapes Określa, czy funkcja Face Landmarker ma zwracać kształty twarzy. Kształty twarzy są używane do renderowania modelu twarzy 3D. Boolean False
output_facial_transformation_matrixes Określa, czy FaceLandmarker ma zwracać macierz przekształceń twarzy. FaceLandmarker używa macierzy do przekształcania punktów orientacyjnych twarzy z kanonicznego modelu twarzy na wykrytą twarz, dzięki czemu użytkownicy mogą stosować efekty do wykrytych punktów orientacyjnych. Boolean False
result_callback Ustawia odbiornik wyników, aby asynchronicznie odbierać wyniki wykrywania punktów charakterystycznych, gdy wykrywacz punktów charakterystycznych twarzy jest w trybie transmisji na żywo. Można go używać tylko wtedy, gdy tryb działania ma wartość LIVE_STREAM ResultListener N/A

Modele

Model Face Landmarker używa serii modeli do prognozowania punktów charakterystycznych twarzy. Pierwszy model wykrywa twarze, drugi lokalizuje punkty orientacyjne na wykrytych twarzach, a trzeci wykorzystuje te punkty do identyfikowania rysów twarzy i wyrazów twarzy.

Te modele są spakowane w jeden pakiet modeli do pobrania:

  • Model wykrywania twarzy: wykrywa obecność twarzy na podstawie kilku kluczowych punktów orientacyjnych.
  • Model siatki twarzy: dodaje pełne mapowanie twarzy. Model generuje szacunkową liczbę 478 trójwymiarowych punktów charakterystycznych twarzy.
  • Model prognozowania kształtu mieszanego: otrzymuje dane wyjściowe z modelu siatki twarzy i prognozuje 52 wyniki kształtu mieszanego, które są współczynnikami reprezentującymi różne wyrazy twarzy.

Model wykrywania twarzy to BlazeFace short-range, lekki i dokładny detektor twarzy zoptymalizowany pod kątem wnioskowania na mobilnych procesorach graficznych. Więcej informacji znajdziesz w sekcji Wykrywanie twarzy.

Obraz poniżej przedstawia pełne mapowanie punktów charakterystycznych twarzy z danych wyjściowych pakietu modelu.

Punkty kluczowe Face Landmarker

Aby zobaczyć bardziej szczegółowy widok punktów charakterystycznych twarzy, otwórz obraz w pełnym rozmiarze.

Pakiet modeli Kształt wejściowy Typ danych Karty modeli Wersje
FaceLandmarker FaceDetector: 192 x 192
FaceMesh-V2: 256 x 256
Blendshape: 1 x 146 x 2
float 16 FaceDetector
FaceMesh-V2
Blendshape
Najnowsze