Konsep deteksi wajah

Deteksi wajah menemukan wajah manusia dalam media visual seperti gambar atau video digital. Saat terdeteksi, wajah memiliki posisi, ukuran, dan orientasi terkait; serta dapat ditelusuri untuk menemukan tempat terkenal seperti mata dan hidung.

Berikut adalah beberapa istilah yang kami gunakan terkait fitur deteksi wajah pada ML Kit:

  • Pelacakan wajah memperluas deteksi wajah ke urutan video. Setiap wajah yang muncul di video selama durasi waktu berapa pun dapat dilacak dari frame ke frame. Ini berarti wajah yang terdeteksi dalam frame video yang berurutan dapat diidentifikasi sebagai orang yang sama. Perhatikan bahwa ini bukan bentuk pengenalan wajah; pelacakan wajah hanya membuat inferensi berdasarkan posisi dan gerakan wajah dalam urutan video.

  • Landmark adalah lokasi menarik pada wajah. Mata kiri, mata kanan, dan pangkal hidung adalah contoh {i>landmark<i}. ML Kit memberikan kemampuan untuk menemukan tempat terkenal pada wajah yang terdeteksi.

  • Kontur adalah sekumpulan titik yang mengikuti bentuk fitur wajah. ML Kit memberikan kemampuan untuk menemukan kontur wajah.

  • Klasifikasi menentukan ada tidaknya karakteristik wajah tertentu. Misalnya, wajah dapat diklasifikasikan berdasarkan apakah matanya terbuka atau tertutup, atau apakah wajah tersenyum atau tidak.

Orientasi wajah

Istilah berikut menjelaskan sudut orientasi wajah terhadap kamera:

  • Euler X: Wajah dengan sudut Euler X positif berarti menghadap ke atas.
  • Euler Y: Wajah dengan sudut Euler Y positif berarti melihat ke kanan kamera, atau melihat ke kiri jika negatif.
  • Euler Z: Wajah dengan sudut Euler Z positif diputar berlawanan arah jarum jam terhadap arah kamera.

ML Kit tidak melaporkan sudut Euler X, Euler Y, atau Euler Z dari wajah yang terdeteksi saat LANDMARK_MODE_NONE, CONTOUR_MODE_ALL, CLASSIFICATION_MODE_NONE, dan PERFORMANCE_MODE_FAST diatur secara bersamaan.

Tempat terkenal

Penanda adalah lokasi menarik pada wajah. Mata kiri, mata kanan, dan pangkal hidung adalah contoh {i>landmark<i}.

ML Kit mendeteksi wajah tanpa mencari tempat terkenal. Deteksi tempat terkenal adalah langkah opsional yang dinonaktifkan secara default.

Tabel berikut merangkum semua tempat terkenal yang dapat dideteksi berdasarkan sudut Euler Y wajah terkait:

Sudut Euler Y Tempat terkenal yang dapat dideteksi
< -36 derajat mata kiri, mulut bagian kiri, telinga kiri, pangkal hidung, pipi kiri
-36 hingga -12 derajat mulut bagian kiri, pangkal hidung, mulut bagian bawah, mata kanan, mata kiri, pipi kiri, ujung telinga kiri
-12 hingga 12 derajat mata kanan, mata kiri, pangkal hidung, pipi kiri, pipi kanan, mulut bagian kiri, mulut bagian kanan, mulut bagian bawah
12 hingga 36 derajat mulut bagian kanan, pangkal hidung, mulut bagian bawah, mata kiri, mata kanan, pipi kanan, ujung telinga kanan
> 36 derajat mata kanan, mulut bagian kanan, telinga kanan, pangkal hidung, pipi kanan

Setiap penanda yang terdeteksi menyertakan posisi yang terkait dalam gambar.

Kontur

Kontur adalah sekumpulan titik yang mewakili bentuk fitur wajah. Gambar berikut mengilustrasikan bagaimana titik-titik ini dipetakan ke wajah. Klik gambar untuk memperbesarnya:

Setiap kontur fitur yang dideteksi ML Kit diwakili oleh sejumlah titik tetap:

Wajah oval 36 poin Bibir atas (atas) 11 poin
Alis kiri (atas) 5 poin Bibir atas (bawah) 9 poin
Alis kiri (bawah) 5 poin Bibir bawah (atas) 9 poin
Alis kanan (atas) 5 poin Bibir bawah (bawah) 9 poin
Alis kanan (bawah) 5 poin Jembatan hidung 2 poin
Mata kiri 16 poin Hidung bawah 3 poin
Mata kanan 16 poin
Pipi kiri (tengah) 1 poin
Pipi kanan (tengah) 1 poin

Saat mendapatkan semua kontur wajah sekaligus, Anda akan mendapatkan array berisi 133 poin, yang dipetakan untuk menampilkan kontur seperti yang ditunjukkan di bawah ini:

Indeks kontur fitur
0-35 Wajah oval
36-40 Alis kiri (atas)
41-45 Alis kiri (bawah)
46-50 Alis kanan (atas)
51-55 Alis kanan (bawah)
56-71 Mata kiri
72-87 Mata kanan
88-96 Bibir atas (bawah)
97-105 Bibir bawah (atas)
106-116 Bibir atas (atas)
117-125 Bibir bawah (bawah)
126.127 Jembatan hidung
128-130 Hidung bawah (perhatikan bahwa titik tengahnya adalah indeks 128)
131 Pipi kiri (tengah)
132 Pipi kanan (tengah)

Klasifikasi

Klasifikasi menentukan ada tidaknya karakteristik wajah tertentu. Saat ini ML Kit mendukung dua klasifikasi: mata terbuka dan tersenyum.

Klasifikasi adalah nilai kepastian. Hal ini menunjukkan keyakinan bahwa karakteristik wajah ada. Misalnya, nilai 0,7 atau lebih untuk klasifikasi tersenyum menunjukkan bahwa kemungkinan seseorang sedang tersenyum.

Kedua klasifikasi ini bergantung pada deteksi {i>landmark<i}.

Perhatikan juga bahwa klasifikasi "mata terbuka" dan "tersenyum" hanya berlaku untuk wajah frontal, yaitu wajah dengan sudut Euler Y kecil (antara -18 dan 18 derajat).

Ukuran Wajah Minimum

Ukuran wajah minimum adalah ukuran wajah yang diinginkan, yang dinyatakan sebagai rasio lebar kepala dan lebar gambar. Misalnya, nilai 0,1 berarti wajah terkecil yang akan ditelusuri memiliki sekitar 10% dari lebar gambar yang sedang ditelusuri.

Ukuran wajah minimum adalah kompromi performa vs. akurasi: menetapkan ukuran minimum yang lebih kecil memungkinkan detektor menemukan wajah yang lebih kecil, tetapi deteksi akan memerlukan waktu lebih lama. Menyetelnya lebih besar mungkin mengecualikan wajah yang lebih kecil, tetapi akan berjalan lebih cepat.

Ukuran wajah minimum bukanlah batas yang mutlak; detektor mungkin menemukan wajah yang sedikit lebih kecil dari yang ditentukan.

Langkah Berikutnya

Gunakan deteksi wajah di aplikasi iOS atau Android Anda: