MediaPipe Etkileşimli Resim Segmenter görevi, bir görüntüyü seçili nesne ve diğer her şey olmak üzere iki bölgeye ayırmanızı sağlar. Görev, görüntüdeki bir konumu alır, o konumdaki bir nesnenin sınırlarını tahmin eder ve nesnenin alanını tanımlayan görüntü verilerini döndürür. Bu görevi, resimdeki bir nesneyi etkileşimli olarak seçmek için kullanabilir ve resmi, nesneyi vurgulayan renk yer paylaşımları veya çevresindeki arka planı bulanıklaştırma gibi efektler uygulamak için çıkışı kullanabilirsiniz. Bu görev, makine öğrenimi (ML) modeliyle görüntü verileri üzerinde çalışır ve bu görevi tekli görüntülerde, video dosyalarında veya kesintisiz bir video akışında kullanabilirsiniz.
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.
Görev girişleri | Görev çıkışları |
---|---|
|
Etkileşimli Resim Segmenter, ayarladığınız yapılandırma seçeneklerine bağlı olarak aşağıdakilerden birini veya ikisini birden içerebilen segmentlere ayrılmış görüntü verileri sunar:
|
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 |
---|---|---|---|
output_category_mask |
True olarak ayarlanırsa çıkış, uint8 resmi olarak bir segmentasyon maskesi içerir. Her piksel değeri, pikselin ilgilenilen alanda bulunan nesnenin bir parçası olup olmadığını gösterir. |
{True, False } |
False |
output_confidence_masks |
True olarak ayarlanırsa çıkış, kayan değer resmi olarak bir segmentasyon maskesi içerir. Burada her kayan değer, pikselin ilgili alanda bulunan nesnenin bir parçası olduğuna dair güveni temsil eder. |
{True, False } |
True |
display_names_locale |
Varsa görev modelinin meta verilerinde sağlanan görünen adlar için kullanılacak etiketlerin dilini ayarlar. İngilizce için varsayılan değer en şeklindedir. TensorFlow Lite Metadata Writer API'yi kullanarak özel modelin meta verilerine yerelleştirilmiş etiketler ekleyebilirsiniz
| Yerel ayar kodu | en |
Modeller
Etkileşimli Resim Segmenter, birden fazla ML modeliyle kullanılabilir. Bu görevle geliştirmeye başladığınızda hedef platformunuz için varsayılan, önerilen modelle başlayın. Mevcut diğer modeller genellikle performans, doğruluk, çözünürlük ve kaynak gereksinimleri arasında denge kurar ve bazı durumlarda ek özellikler içerir.
MagicTouch modeli (önerilir)
Bu model, ilgilenilen bir alan için resim koordinatlarına göre segmentleri belirler. Model, özelleştirilmiş bir kod çözücüye sahip, MobileNetV3 mimarisine benzer bir Evrişimsel Sinir Ağı kullanır.
Model adı | Giriş şekli | Nicelleştirme türü | Model Kartı | Sürümler |
---|---|---|---|---|
MagicTouch | 512 x 512 x 4 | Yok (float32) | bilgi | En son |
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 |
---|---|---|
MagicTouch | 130,11 ms. | 67,25 ms |