Etkileşimli görüntü segmentasyonu görev kılavuzu

Bir resimde sandalyenin fotoğrafını, diğerinde ise modelin sandalyeyi algıladığını belirtmek için sandalyenin vurgulandığı aynı resmi gösteren yan yana resimler

MediaPipe Interactive Image Segmenter (MediaPipe Etkileşimli Resim Segmentleyici) görevi, bir resmi iki bölgeye (seçilen nesne ve diğer her şey) bölmenize olanak tanır. Görev, bir resimdeki bir konumu alır, bu konumdaki bir nesnenin sınırlarını tahmin eder ve nesnenin alanını tanımlayan resim verilerini döndürür. Bu görevi kullanarak resimdeki bir nesneyi etkileşimli olarak seçebilir ve çıkışı kullanarak resme efektler (ör. nesneyi vurgulayan veya etrafındaki arka planı bulanıklaştıran renk yer paylaşımları) uygulayabilirsiniz. Bu görev, makine öğrenimi (ML) modeli ile görüntü verilerinde çalışır ve tek resimler, video dosyaları veya sürekli video akışlarında kullanılabilir.

Deneyin.

Başlayın

Hedef platformunuzla ilgili bu uygulama kılavuzlarından birini uygulayarak bu görevi kullanmaya başlayın. Platforma özel bu kılavuzlar, önerilen bir model ve önerilen yapılandırma seçenekleriyle birlikte kod örneği de dahil olmak üzere bu görevin temel uygulama sürecinde 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

  • 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.
Görev girişleri Görev çıkışları
  • Bir resimdeki nesnenin önemli yer koordinatları
  • İşlenecek resim dosyası
Etkileşimli Resim Segmentleyici, belirlediğiniz yapılandırma seçeneklerine bağlı olarak aşağıdakilerden birini veya ikisini birden içerebilen segmentlenmiş resim verileri oluşturur:
  • CATEGORY_MASK: uint8 biçiminde resim olarak segmentlere ayrılmış bir maske içeren bir liste. Her piksel değeri, ilgili alanda bulunan nesnenin bir parçası olup olmadığını belirtir.
  • CONFIDENCE_MASK: float32 biçiminde piksel değerlerine sahip segmentlere ayrılmış bir maske içeren kanalların listesi. Her piksel değeri, ilgili alanda bulunan nesnenin bir parçası olma güven düzeyini gösterir.

Yapılandırma seçenekleri

Bu görev için aşağıdaki yapılandırma seçenekleri vardır:

Seçenek Adı Açıklama Değer Aralığı Varsayılan değer
output_category_mask True olarak ayarlanırsa çıkış, her piksel değerinin pikselin ilgi alanı {True, False} False
output_confidence_masks True olarak ayarlanırsa çıkış, her kayan nokta değerinin pikselin ilgi alanındaki nesnenin bir parçası olduğuna dair güveni temsil ettiği, kayan nokta değeri resmi olarak bir segmentasyon maskesi içerir. {True, False} True
display_names_locale Görevin modelinin meta verilerinde sağlanan görünen adlar için kullanılacak etiketlerin dilini belirler (varsa). Varsayılan değer, İngilizce için en'tir. TensorFlow Lite Meta Veri Yazıcı API'yi kullanarak özel bir modelin meta verilerine yerelleştirilmiş etiketler ekleyebilirsiniz Yer kodu en

Modeller

Etkileşimli Görüntü Segmentleyici, birden fazla yapay zeka modeliyle kullanılabilir. Bu görevle geliştirmeye başladığınızda hedef platformunuz için varsayılan, önerilen modelle başlayın. Diğer mevcut modeller genellikle performans, doğruluk, çözünürlük ve kaynak gereksinimleri arasında denge kurar ve bazı durumlarda ek özellikler içerir.

Bu model, bir ilgi alanı için verilen görüntü koordinatlarına göre segmentleri tanımlar. Model, özelleştirilmiş bir kod çözücüye sahip MobileNetV3 mimarisine benzer bir Evrişimli Nöral Ağ kullanır.

Model adı Giriş şekli Kesirli sayılaştırma türü Model Kartı Sürümler
MagicTouch 512 x 512 x 4 Yok (float32) info En son

Görev karşılaştırmaları

Yukarıdaki önceden eğitilmiş modellere dayalı olarak tüm ardışık düzenin görev karşılaştırmalarını aşağıda bulabilirsiniz. Gecikme sonucu, CPU / GPU kullanan Pixel 6'taki ortalama gecikmedir.

Model Adı CPU Gecikmesi GPU Gecikmesi
MagicTouch 130,11 ms 67,25 ms