MediaPipe Yüz Dedektörü görevi, bir resimdeki veya videodaki yüzleri algılamanızı sağlar. Yüzleri ve yüz özelliklerini bir çerçeve içindeki yerini belirlemek için bu görevi kullanabilirsiniz. Bu görev, tek görüntülerle veya sürekli bir görüntü akışıyla çalışan bir makine öğrenimi (ML) modeli kullanır. Görev, yüzdeki konumları ve yüzdeki şu önemli noktaları sağlar: sol göz, sağ göz, burun ucu, ağız, sol göz trajyonu ve sağ göz trajyonu.
Başlayın
Hedef platformunuz için bu uygulama rehberlerinden birini izleyerek bu görevi kullanmaya başlayın. Bu platforma özel kılavuzlar, önerilen bir model ve önerilen yapılandırma seçenekleriyle birlikte kod örneği dahil olmak üzere, bu görevin temel bir şekilde uygulanmasında size yol gösterir:
- Android - Kod örneği - Kılavuz
- Python - Kod örneği- Kılavuz
- Web - Kod örneği - Kılavuz
- iOS - Kod örneği - Kılavuz
Görev ayrıntıları
Bu bölümde, bu görevin özellikleri, girişleri, çıkışları ve yapılandırma seçenekleri açıklanmaktadır.
Özellikler
- Giriş resmi işleme: İşleme resim döndürme, yeniden boyutlandırma, normalleştirme ve renk alanı dönüştürme işlemlerini içerir.
- Puan eşiği - Sonuçları tahmin puanlarına göre filtreleyin.
Görev girişleri | Görev çıkışları |
---|---|
Yüz Dedektörü, aşağıdaki veri türlerinden birinin girişini kabul eder:
|
Yüz Dedektörü aşağıdaki sonuçları verir:
|
Yapılandırma seçenekleri
Bu görev aşağıdaki yapılandırma seçeneklerine sahiptir:
Seçenek Adı | Açıklama | Değer Aralığı | Varsayılan Değer |
---|---|---|---|
running_mode |
Görevin çalışma modunu ayarlar. Üç mod vardır: RESİM: Tek resimli girişler için mod. VİDEO: Bir videonun kodu çözülmüş karelerine yönelik mod. LIVE_STREAM: Kamera gibi giriş verilerini içeren bir canlı yayın modu. Bu modda, sonuçları eşzamansız olarak almak üzere bir işleyici ayarlamak için resultListener çağrılmalıdır. |
{IMAGE, VIDEO, LIVE_STREAM } |
IMAGE |
min_detection_confidence |
Yüz algılamanın başarılı olarak kabul edilmesi için gereken minimum güven puanı. | Float [0,1] |
0.5 |
min_suppression_threshold |
Yüz algılamanın çakıştığı kabul edilmesi için maksimum olmayan minimum engelleme eşiği. | Float [0,1] |
0.3 |
result_callback |
Yüz Dedektörü canlı yayın modundayken sonuç işleyiciyi, algılama sonuçlarını eşzamansız olarak alacak şekilde ayarlar. Yalnızca çalıştırma modu LIVE_STREAM olarak ayarlandığında kullanılabilir. |
N/A |
Not set |
Modeller
Yüz algılama modelleri, kısa mesafe ve uzun menzilli algılama gibi kullanım amaçlarına bağlı olarak değişiklik gösterebilir. Modeller ayrıca genellikle performans, doğruluk, çözünürlük ve kaynak gereksinimleri arasında denge kurar ve bazı durumlarda ek özellikler içerir.
Bu bölümde listelenen modeller, mobil GPU çıkarımı için optimize edilmiş hafif ve doğru bir yüz dedektörü olan BlazeFace'in varyantlarıdır. BlazeFace modelleri; 3D yüz tuş noktası tahmini, ifade sınıflandırma ve yüz bölgesi segmentasyonu gibi uygulamalar için uygundur. BlazeFace, MobileNetV1/V2'ye benzer hafif bir özellik ayıklama ağı kullanır.
BlazeFace (kısa aralık)
Akıllı telefon kamerasından veya web kamerasından selfie benzeri resimlerdeki bir veya birden fazla yüzü algılamaya yönelik hafif bir model. Model, kısa mesafedeki ön telefon kamerası görüntüleri için optimize edilmiştir. Model mimarisi, özel bir kodlayıcı ile Tek Çekim Dedektörü (SSD) evrişimsel ağ tekniği kullanır. Daha fazla bilgi için Single Shot MultiBox Detector (Tek Çekim Çoklu Kutu Dedektörü) adlı araştırma makalesine bakın.
Model adı | Giriş şekli | Nicelleştirme türü | Model Kartı | Sürümler |
---|---|---|---|---|
BlazeFace (kısa aralık) | 128 x 128 | kayan nokta 16 | bilgi | En son |
BlazeFace (tam aralık)
Akıllı telefon kamerasından veya web kamerasından resimlerdeki bir veya birden fazla yüzü algılamaya yönelik nispeten hafif bir model. Model, arka yüz telefon kamerası görüntüleriyle çekilenler gibi tam aralıklı resimler için optimize edilmiştir. Model mimarisi, özel bir kodlayıcıyla CenterNet kıvrımlı ağına benzer bir teknik kullanır.
Model adı | Giriş şekli | Nicelleştirme türü | Model Kartı | Sürümler |
---|---|---|---|---|
BlazeFace (tam aralık) | 128 x 128 | kayan nokta 16 | bilgi | Çok yakında |
BlazeFace Sparse (tam aralık)
Normal tam aralıklı BlazeFace modelinin yaklaşık% 60 daha küçük boyutlu daha hafif bir sürümü. Model, arka yüz telefon kamerası görüntüleriyle çekilenler gibi tam aralıklı resimler için optimize edilmiştir. Model mimarisi, özel kodlayıcıyla CenterNet kıvrımlı ağına benzer bir teknik kullanır.
Model adı | Giriş şekli | Nicelleştirme türü | Model Kartı | Sürümler |
---|---|---|---|---|
BlazeFace Sparse (tam aralık) | 128 x 128 | kayan nokta 16 | bilgi | Çok yakında |
Görev karşılaştırmaları
Yukarıda önceden eğitilmiş modellere dayalı olarak ardışık düzenin tamamı için görev karşılaştırmaları aşağıda verilmiştir. Gecikme sonucu, Pixel 6'da CPU / GPU kullanılarak elde edilen ortalama gecikmedir.
Model Adı | CPU Gecikmesi | GPU Gecikmesi |
---|---|---|
BlazeFace (kısa aralık) | 2,94 ms. | 7,41 ms. |