Classification, tespit edilen yüz'ün gülüp gülmediğini tespit etmemizi sağlar. Bunu yaparkende yüzün gülüp gülmediğiyle alakalı 0 ile 1 arasında bir sayı döner. Bu yazımızda face detection ile alakalı önceki yazılarımızda başladığımız proje üzerinden devam ediceğimiz için önce onları okumanızda fayda var:
- Android Face Detection 01 - Başlangıç
- Android Face Detection 02 - Yüzleri Kare içine alma
- Android Face Detection 03 - Landmarks Kullanımı
MainActivit'in onCreate
methodunda oluşturduğumuz FaceDetector
nesnesini aşşağıdaki gibi güncelliyoruz
1 2 3 4 5 |
|
Eğer landmark kullanmak istemiyorsanız setLandmarkType
opsiyonunu kaldırabilirsiniz. Bu procces'in hızlanmasını sağlayacaktır. Yine onCreate
‘in içerisinde kaynak resmimizi alıyoruz
1
|
|
Daha sonra CustomView
sınıfımıza şu fonksiyonu ekliyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
Burada kilit nokta face.getIsSmilingProbability()
. Bu bize, tespit edilen yüzün gülüyor olma olasılığını 0 ile 1 arasında bir sayı vererek söylemektedir.
Bu yeni fonksiyonumuzu CustomView
sımıfımızdaki onDraw()
fonksiyonumuzda drawFaceAnnotations()
fonksiyonu yerine çağırıyoruz.
1
|
|
Projeyi run ettiğimizde kaynak olarak verdiğimiz resimdeki yüzlerin gülümseme oranlarını bize verdiğini görebilirsiniz.
Tavsiyelerinizi önerilerinizi ve ya sorularınızı bekliyorum. İyi çalışmalar.