MediaPipe El İşaretçisi görevi, bir görüntüdeki ellerin önemli noktalarını algılamanızı sağlar. Bu görevi kullanarak ellerinizin önemli noktalarını belirleyebilir ve üzerinde görsel efektler oluşturabilirsiniz. Bu görev, statik veri veya sürekli akış biçiminde makine öğrenimi (ML) modeliyle görüntü verileri üzerinde çalışır ve görüntü koordinatlarındaki el yer işaretlerini, dünya koordinatlarındaki el yer işaretlerini ve algılanan birden fazla elin el ölçüsünü(sol/sağ el) gösterir.
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
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
- Resim 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ı |
---|---|
El İşaretçisi, aşağıdaki veri türlerinden birinin girişini kabul eder:
|
El İşaretçisi 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 |
num_hands |
El işareti dedektörü tarafından algılanan maksimum el sayısı. | Any integer > 0 |
1 |
min_hand_detection_confidence |
El algılamasının, avuç içi algılama modelinde başarılı olarak değerlendirilebilmesi için gereken minimum güven puanı. | 0.0 - 1.0 |
0.5 |
min_hand_presence_confidence |
El önemli nokta algılama modelindeki el varlığı puanı için minimum güven puanı. Video modunda ve Canlı yayın modunda, el belirgin işaret modelindeki el varlığı güven puanı bu eşiğin altındaysa El İşaretçisi avuç içi algılama modelini tetikler. Aksi takdirde, sonraki önemli nokta algılamaları için ellerin konumunu basit bir el izleme algoritması belirler. | 0.0 - 1.0 |
0.5 |
min_tracking_confidence |
Elle izlemenin başarılı olarak kabul edilmesi için gereken minimum güven puanı. Bu, geçerli çerçevede ve son karede bulunan eller arasındaki sınırlayıcı kutu IoU eşiğidir. El İşaretçisi'nin Video ve Akış modunda izleme başarısız olursa El İşaretçisi el algılamayı tetikler. Aksi halde, el algılaması atlanır. | 0.0 - 1.0 |
0.5 |
result_callback |
Sonuç işleyiciyi, el işaretçisi canlı yayın modundayken algılama sonuçlarını eşzamansız olarak alacak şekilde ayarlar.
Yalnızca çalıştırma modu LIVE_STREAM olarak ayarlandığında geçerlidir |
Yok | Yok |
Modeller
El İşaretçisi, avuç içi algılama modeli ve el ile önemli noktaları algılama modeli olmak üzere paketlenmiş iki model içeren bir model paketi kullanır. Bu görevi çalıştırmak için her iki modeli de içeren bir model paketine ihtiyacınız vardır.
Model adı | Giriş şekli | Nicelleştirme türü | Model Kartı | Sürümler |
---|---|---|---|---|
HandLandmarker (tam) | 192 x 192, 224 x 224 | kayan nokta 16 | bilgi | En son |
El önemli nokta modeli paketi, algılanan el bölgelerindeki 21 el eklem koordinatlarının anahtar noktası yerelleştirmesini algılar. Model, gerçek dünyadan yaklaşık 30 bin görüntü ve çeşitli arka planlar üzerine empoze edilen çeşitli sentetik el modelleri kullanılarak eğitildi.
El işaretçisi model paketi, avuç içi algılama modeli ve el ile önemli nokta algılama modeli içerir. Avuç içi algılama modeli, giriş görüntüsünde elleri bulur. El ile önemli noktaları algılama modeli ise avuç içi algılama modeli tarafından tanımlanan kırpılmış el görüntüsündeki belirli el işaretlerini tanımlar.
Avuç içi algılama modelini çalıştırmak zaman alıcı olduğundan, video veya canlı yayın modundayken El İşaretçisi, sonraki karelerde ellerin bölgesini yerelleştirmek için el yer işaretleri modeliyle tanımlanan sınırlayıcı kutuyu bir karede kullanır. El İşaretçisi, yalnızca el yer işareti modeli artık el varlığı tanımlamıyorsa veya çerçeve içindeki elleri izlemiyorsa avuç içi algılama modelini yeniden tetikler. Bu, El İşaretçisi'nin avuç içi algılama modelini işaretleme sayısını azaltır.
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 |
---|---|---|
İşaretçi (tam) | 17,12 ms. | 12,27 ms. |