Realiza segmentación de imágenes.
La API espera un modelo TFLite con metadatos del modelo TFLite. .
La API admite modelos con un tensor de entrada de imagen y un tensor de salida. Para ser más específicos, aquí están los requisitos.
- Tensor de imagen de entrada (
kTfLiteUInt8
/kTfLiteFloat32
)- entrada de imagen de tamaño
[batch x height x width x channels]
. - No se admite la inferencia por lotes (se requiere que
batch
sea 1). - Solo se admiten entradas RGB (se requieren 3
channels
). - Si el tipo es
kTfLiteFloat32
, se deben adjuntar NormalizationOptions a los metadatos para la normalización de la entrada.
- entrada de imagen de tamaño
kTfLiteUInt8
/ kTfLiteFloat32
)- tensor de tamaño
[batch x mask_height x mask_width x num_classes]
, donde se requiere quebatch
sea 1,mask_width
ymask_height
son las dimensiones de las máscaras de segmentación producidas por el modelo, ynum_classes
es el número de clases admitidas por el modelo. - Los mapas de etiquetas opcionales (pero recomendados) se pueden adjuntar como AssociatedFile-s con tipo TENSOR_AXIS_LABELS, que contienen una etiqueta por línea. El primer AssociatedFile (si lo hay) se utiliza para completar el nombre de la clase, es decir,
ColoredLabel.getlabel()
de los resultados. El nombre para mostrar, es decir,ColoredLabel.getDisplayName()
, se completa desde AssociatedFile (si lo hay) cuya configuración regional coincide con el campo `display_names_locale` de `ImageSegmenterOptions` utilizado en el momento de la creación ("en" de forma predeterminada, es decir, inglés). Si ninguno de estos está disponible, solo se completará el campo "índice" de los resultados.
Se puede encontrar un ejemplo de dicho modelo en TensorFlow Hub. .
Clases anidadas
clase | ImageSegmenter.ImageSegmenterOptions | Opciones para configurar un ImageSegmenter . |
Métodos públicos
Métodos heredados
Métodos públicos
ImageSegmenter estático público createFromBuffer ( ByteBuffer modelBuffer)
Crea una instancia ImageSegmenter
con un búfer de modelo y el ImageSegmenter.ImageSegmenterOptions
predeterminado.
Parámetros
modeloBuffer | un ByteBuffer directo o un MappedByteBuffer del modelo de segmentación |
---|
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el búfer del modelo no es un ByteBuffer directo o un MappedByteBuffer |
ImageSegmenter estático público createFromBufferAndOptions (opciones ByteBuffer modelBuffer, ImageSegmenter.ImageSegmenterOptions )
Crea una instancia ImageSegmenter
con un búfer de modelo e ImageSegmenter.ImageSegmenterOptions
.
Parámetros
modeloBuffer | un ByteBuffer directo o un MappedByteBuffer del modelo de segmentación |
---|---|
opciones |
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el búfer del modelo no es un ByteBuffer directo o un MappedByteBuffer |
ImageSegmenter estático público createFromFile (contexto de contexto, ruta de modelo de cadena )
Crea una instancia ImageSegmenter
a partir del ImageSegmenter.ImageSegmenterOptions
predeterminado.
Parámetros
contexto | |
---|---|
modeloRuta | ruta del modelo de segmentación con metadatos en los activos |
Lanza
IOExcepción | si ocurre un error de E/S al cargar el modelo tflite |
---|---|
Argumento de excepción ilegal | si un argumento no es válido |
Excepción de estado ilegal | si hay un error interno |
Excepción en tiempo de ejecución | si hay un error no especificado |
ImageSegmenter estático público createFromFile ( Archivo modelFile)
Crea una instancia ImageSegmenter
a partir del ImageSegmenter.ImageSegmenterOptions
predeterminado.
Parámetros
modeloArchivo | la instancia File del modelo de segmentación |
---|
Lanza
IOExcepción | si ocurre un error de E/S al cargar el modelo tflite |
---|---|
Argumento de excepción ilegal | si un argumento no es válido |
Excepción de estado ilegal | si hay un error interno |
Excepción en tiempo de ejecución | si hay un error no especificado |
ImageSegmenter estático público createFromFileAndOptions (opciones de archivo modelFile, ImageSegmenter.ImageSegmenterOptions )
Crea una instancia ImageSegmenter
a partir de ImageSegmenter.ImageSegmenterOptions
.
Parámetros
modeloArchivo | la instancia File del modelo de segmentación |
---|---|
opciones |
Lanza
IOExcepción | si ocurre un error de E/S al cargar el modelo tflite |
---|---|
Argumento de excepción ilegal | si un argumento no es válido |
Excepción de estado ilegal | si hay un error interno |
Excepción en tiempo de ejecución | si hay un error no especificado |
ImageSegmenter estático público createFromFileAndOptions (contexto de contexto, ruta de modelo de cadena , opciones ImageSegmenter.ImageSegmenterOptions )
Crea una instancia ImageSegmenter
a partir de ImageSegmenter.ImageSegmenterOptions
.
Parámetros
contexto | |
---|---|
modeloRuta | ruta del modelo de segmentación con metadatos en los activos |
opciones |
Lanza
IOExcepción | si ocurre un error de E/S al cargar el modelo tflite |
---|---|
Argumento de excepción ilegal | si un argumento no es válido |
Excepción de estado ilegal | si hay un error interno |
Excepción en tiempo de ejecución | si hay un error no especificado |
Lista pública < Segmentación > segmento (opciones frameBufferHandle largo, ImageProcessingOptions )
Parámetros
marcoBufferHandle | |
---|---|
opciones |
Lista pública < Segmentación > segmento (imagen TensorImage )
Realiza una segmentación real en la imagen proporcionada.
ImageSegmenter
admite los siguientes tipos de espacio de color TensorImage
:
Parámetros
imagen | un objeto UINT8 TensorImage que representa una imagen RGB o YUV |
---|
Devoluciones
- resultados de realizar la segmentación de imágenes. Tenga en cuenta que, en ese momento, se espera que se devuelva un único elemento
Segmentation
. El resultado se almacena en unaList
para su posterior extensión, por ejemplo, a modelos de segmentación de instancias, que pueden devolver una segmentación por objeto.
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el tipo de espacio de color de la imagen no es compatible |
Lista pública < Segmentación > segmento (imagen MlImage )
Realiza una segmentación real en el MlImage
proporcionado.
Parámetros
imagen | una MlImage para segmentar. |
---|
Devoluciones
- resultados de realizar la segmentación de imágenes. Tenga en cuenta que, en ese momento, se espera que se devuelva un único elemento
Segmentation
. El resultado se almacena en unaList
para su posterior extensión, por ejemplo, a modelos de segmentación de instancias, que pueden devolver una segmentación por objeto.
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el tipo de almacenamiento o formato de la imagen no es compatible |
Lista pública < Segmentación > segmento (imagen TensorImage , opciones ImageProcessingOptions )
Realiza una segmentación real en la imagen proporcionada con ImageProcessingOptions
.
ImageSegmenter
admite los siguientes tipos de espacio de color TensorImage
:
ImageSegmenter
admite las siguientes opciones:
- rotación de imagen (a través de
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). El valor predeterminado esImageProcessingOptions.Orientation.TOP_LEFT
Parámetros
imagen | un objeto UINT8 TensorImage que representa una imagen RGB o YUV |
---|---|
opciones | las opciones configuran cómo preprocesar la imagen |
Devoluciones
- resultados de realizar la segmentación de imágenes. Tenga en cuenta que, en ese momento, se espera que se devuelva un único elemento
Segmentation
. El resultado se almacena en unaList
para su posterior extensión, por ejemplo, a modelos de segmentación de instancias, que pueden devolver una segmentación por objeto.
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el tipo de espacio de color de la imagen no es compatible |
Lista pública < Segmentación > segmento (imagen MlImage , opciones ImageProcessingOptions )
Realiza una segmentación real en el MlImage
proporcionado con ImageProcessingOptions
.
ImageSegmenter
admite las siguientes opciones:
- rotación de imagen (a través de
ImageProcessingOptions.Builder.setOrientation(ImageProcessingOptions.Orientation)
). El valor predeterminado esImageProcessingOptions.Orientation.TOP_LEFT
.MlImage.getRotation()
no es efectivo.
Parámetros
imagen | una MlImage para segmentar. |
---|---|
opciones | las opciones configuran cómo preprocesar la imagen. |
Devoluciones
- resultados de realizar la segmentación de imágenes. Tenga en cuenta que, en ese momento, se espera que se devuelva un único elemento
Segmentation
. El resultado se almacena en unaList
para su posterior extensión, por ejemplo, a modelos de segmentación de instancias, que pueden devolver una segmentación por objeto.
Lanza
Excepción de estado ilegal | si hay un error interno |
---|---|
Excepción en tiempo de ejecución | si hay un error no especificado |
Argumento de excepción ilegal | si el tipo de espacio de color de la imagen no es compatible |