L'attività MediaPipe Interactive Image Segmenter ti consente di suddividere un'immagine in due regioni: un oggetto selezionato e tutto il resto. L'attività prende una posizione in un'immagine, stima i confini di un oggetto in quella posizione e restituisce i dati immagine che definiscono l'area dell'oggetto. Puoi utilizzare questa operazione per selezionare in modo interattivo un oggetto in un'immagine e utilizzare l'output per applicare effetti all'immagine, ad esempio sovrapposizioni di colore che mettono in evidenza l'oggetto o sfocano lo sfondo circostante. Questa attività opera sui dati delle immagini con un modello di machine learning (ML) e puoi utilizzarla su singole immagini, file video o uno stream video continuo.
Inizia
Per iniziare a utilizzare questa attività, segui una di queste guide all'implementazione per la tua piattaforma di destinazione. Queste guide specifiche per la piattaforma illustrano un'implementazione di base di questa attività, incluso un modello consigliato e un esempio di codice con le opzioni di configurazione consigliate:
- Android - Esempio di codice - Guida
- Python - Esempio di codice - Guida
- Web - Esempio di codice - Guida
Dettagli attività
Questa sezione descrive le funzionalità, gli input, gli output e le opzioni di configurazione di questa attività.
Funzionalità
- Elaborazione delle immagini di input: l'elaborazione include la rotazione, il ridimensionamento, la normalizzazione e la conversione dello spazio colore delle immagini.
Input delle attività | Output delle attività |
---|---|
|
Lo strumento di segmentazione delle immagini interattive genera dati sulle immagini segmentate, che possono includere uno o entrambi i seguenti elementi, a seconda delle opzioni di configurazione impostate:
|
Opzioni di configurazione
Questa attività ha le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
output_category_mask |
Se impostato su True , l'output include una maschera di segmentazione
come immagine uint8, in cui ogni valore del pixel indica se il pixel fa parte
dell'oggetto nell'area di interesse. |
{True, False } |
False |
output_confidence_masks |
Se impostato su True , l'output include una maschera di segmentazione
come immagine con valore float, in cui ogni valore float rappresenta la confidenza
che il pixel fa parte dell'oggetto nell'area di interesse. |
{True, False } |
True |
display_names_locale |
Imposta la lingua delle etichette da utilizzare per i nomi visualizzati forniti nei metadati del modello dell'attività, se disponibile. Il valore predefinito è en per
l'inglese. Puoi aggiungere etichette localizzate ai metadati di un modello personalizzato
utilizzando l'API TensorFlow Lite Metadata Writer
| Codice delle impostazioni internazionali | it |
Modelli
Lo strumento di segmentazione delle immagini interattivo può essere utilizzato con più di un modello di ML. Quando inizi a sviluppare con questa attività, inizia con il modello predefinito consigliato per la tua piattaforma di destinazione. Gli altri modelli disponibili di solito prevedono compromessi tra prestazioni, precisione, risoluzione e requisiti di risorse e, in alcuni casi, includono funzionalità aggiuntive.
Modello MagicTouch (consigliato)
Questo modello identifica i segmenti in base alle coordinate dell'immagine per un'area di interesse. Il modello utilizza una rete neurale convoluzionale, simile a un'architettura MobileNetV3, con un decodificatore personalizzato.
Nome modello | Forma di input | Tipo di quantizzazione | Scheda del modello | Versioni |
---|---|---|---|---|
MagicTouch | 512 x 512 x 4 | Nessuno (float32) | informazioni | Ultime notizie |
Benchmark delle attività
Ecco i benchmark delle attività per l'intera pipeline in base ai modelli preaddestrati sopra riportati. Il risultato della latenza è la latenza media su Pixel 6 che utilizza la CPU / GPU.
Nome modello | Latenza della CPU | Latenza GPU |
---|---|---|
MagicTouch | 130,11 ms | 67,25 ms |