Wykrywanie twarzy

Dzięki interfejsowi API do wykrywania twarzy w ML Kit możesz wykrywać twarze na zdjęciach, identyfikować główne rysy twarzy i rejestrować obrysy wykrytych twarzy.

Dzięki wykrywaniu twarzy możesz uzyskać informacje potrzebne do wykonania takich zadań jak upiększanie selfie i portretów czy generowanie awatarów ze zdjęcia użytkownika. Ponieważ ML Kit wykrywa twarze w czasie rzeczywistym, możesz używać go w aplikacjach, takich jak czat wideo czy gry, które reagują na wyraz twarzy gracza.

iOS Android

Jeśli jesteś programistą Flutter, może Cię zainteresować usługa FlutterFire, która zawiera wtyczkę do interfejsów ML Vision API w Firebase.

Najważniejsze funkcje

Rozpoznawaj i lokalizuj rysy twarzy Ustal współrzędne oczu, uszu, policzków, nosa i ust każdej wykrytej twarzy.
Poznaj kontury rysów twarzy Określ kontury wykrytych twarzy oraz ich oczu, brwi, ust i nosa.
Rozpoznawanie wyrazu twarzy Sprawdź, czy dana osoba się uśmiecha lub ma zamknięte oczy.
Śledzenie twarzy na klatkach wideo Uzyskaj identyfikator wykrytej twarzy danej osoby. Ten identyfikator jest spójny we wszystkich wywołaniach, dzięki czemu możesz na przykład manipulować obrazem w stosunku do konkretnej osoby w strumieniu wideo.
Przetwarzaj klatki wideo w czasie rzeczywistym Wykrywanie twarzy jest wykonywane na urządzeniu i jest wystarczająco szybkie, aby można je było wykorzystać w aplikacjach działających w czasie rzeczywistym, takich jak manipulacja wideo.

Przykładowe wyniki

Przykład 1

W przypadku każdej wykrytej twarzy:

Twarz 1 z 3
Wielokąt granicy (884.880004882812, 149.546676635742), (1030.77197265625, 149.546676635742), (1030.77197265625, 3278.25, 3278.
Kąty obrotu Y: -14.054030418395996, Z: -55.007488250732422
Identyfikator śledzenia 2
punkty orientacyjne na twarzach,
Lewe oko (845.869323730469, 211.867126464844)
Prawe oko (971.579467773438, 247.257247924805)
Dolna część ust (907.756591796875; 259.714477539062)

... itd.

Prawdopodobieństwo cech
Uśmiech 0,88979166746139526
Otwarte lewe oko 0,98635888937860727
Otwarte prawe oko 0,99258323386311531

Przykład 2 (wykrywanie kontur twarzy)

Gdy wykrywanie konturu twarzy jest włączone, otrzymujesz też listę punktów za każdą wykrytą cechę twarzy. Te punkty reprezentują kształt obiektu. Na poniższym obrazie przedstawiono mapowanie tych punktów na twarz (kliknij obraz, aby go powiększyć):

Kontury twarzy
Łosy nosowe (505.149811, 221.201797), (506.987122, 313.285919)
Lewe oko (404.642029, 232.854431), (408.527283, 231.366623), (413.565796, 229.427856), (421.378296), (421.378296), (426.967682), (408.527283), 231.366623, (413.565796, 229.427856, 226.967682),
Górna warga (421.662048, 354.520813), (428.103882, 349.694061), (440.847595, 348.048737), (456.549988, 346.2480532), (428.103882), (440.847595, 348.048737), (456.549988, 346.2480532),
(itp.)