La tarea del segmentador de imágenes interactivo de MediaPipe te permite dividir una imagen en dos regiones: un objeto seleccionado y todo lo demás. La tarea toma una ubicación en una imagen, estima los límites de un objeto en esa ubicación y muestra datos de imagen que definen el área del objeto. Puedes usar esta tarea para seleccionar de forma interactiva un objeto en una imagen y usar el resultado para aplicar efectos a la imagen, como superposiciones de color que destaquen el objeto o desenfoquen el fondo a su alrededor. Esta tarea opera en datos de imagen con un modelo de aprendizaje automático (AA) y puedes usarla en imágenes individuales, archivos de video o una transmisión de video continua.
Comenzar
Para comenzar a usar esta tarea, sigue una de estas guías de implementación para tu plataforma de destino. En estas guías específicas de la plataforma, se explica una implementación básica de esta tarea, incluido un modelo recomendado y un ejemplo de código con las opciones de configuración recomendadas:
- Android: Ejemplo de código: Guía
- Python: Ejemplo de código: Guía
- Web: Ejemplo de código: Guía
Detalles de la tarea
En esta sección, se describen las capacidades, las entradas, las salidas y las opciones de configuración de esta tarea.
Funciones
- Procesamiento de imágenes de entrada: El procesamiento incluye la rotación de imágenes, el cambio de tamaño, la normalización y la conversión de espacios de color.
Entradas de tareas | Resultados de las tareas |
---|---|
|
El Segmentador de imágenes interactivo genera datos de imágenes segmentadas, que pueden incluir uno o ambos de los siguientes elementos, según las opciones de configuración que establezcas:
|
Opciones de configuración
Esta tarea tiene las siguientes opciones de configuración:
Nombre de la opción | Descripción | Rango de valores | Valor predeterminado |
---|---|---|---|
output_category_mask |
Si se establece en True , el resultado incluye una máscara de segmentación como una imagen uint8, en la que cada valor de píxel indica si el píxel forma parte del objeto ubicado en el área de interés. |
{True, False } |
False |
output_confidence_masks |
Si se establece en True , el resultado incluye una máscara de segmentación como una imagen de valor de punto flotante, en la que cada valor de punto flotante representa la confianza de que el píxel es parte del objeto ubicado en el área de interés. |
{True, False } |
True |
display_names_locale |
Establece el idioma de las etiquetas que se usarán para los nombres visibles proporcionados en los metadatos del modelo de la tarea, si están disponibles. El valor predeterminado es en para el inglés. Puedes agregar etiquetas localizadas a los metadatos de un modelo personalizado con la API de Metadata Writer de TensorFlow Lite.
| Código de configuración regional | en |
Modelos
El Segmentador de imágenes interactivo se puede usar con más de un modelo de AA. Comienza con el modelo predeterminado y recomendado para tu plataforma de destino cuando comiences a desarrollar con esta tarea. Los otros modelos disponibles suelen establecer compensaciones entre el rendimiento, la precisión, la resolución y los requisitos de recursos, y, en algunos casos, incluyen funciones adicionales.
Modelo MagicTouch (recomendado)
Este modelo identifica segmentos dados las coordenadas de la imagen para un área de interés. El modelo usa una red neuronal convolucional, similar a una arquitectura de MobileNetV3, con un decodificador personalizado.
Nombre del modelo | Forma de entrada | Tipo de cuantización | Tarjeta de modelo | Versiones |
---|---|---|---|---|
MagicTouch | 512 x 512 x 4 | Ninguno (float32) | info | Más reciente |
Comparativas de tareas
Estas son las comparativas de tareas de toda la canalización según los modelos previamente entrenados anteriores. El resultado de la latencia es la latencia promedio en el Pixel 6 con CPU o GPU.
Nombre del modelo | Latencia de la CPU | Latencia de la GPU |
---|---|---|
MagicTouch | 130.11 ms | 67.25 ms |