El ile ilgili önemli noktaları algılama rehberi

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.

Deneyin!

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:

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:
  • Hareketsiz resimler
  • Kodu çözülmüş video kareleri
  • Canlı video feed'i
El İşaretçisi aşağıdaki sonuçları verir:
  • Algılanan ellerin el şekli
  • Resim koordinatlarında algılanan ellerin yer işaretleri
  • Dünya koordinatında algılanan ellerin önemli noktaları

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.