ImageSegmenter

classe final pública ImageSegmenter

Executa segmentação em imagens.

A API espera um modelo TFLite com metadados de modelo TFLite. .

A API oferece suporte a modelos com um tensor de entrada de imagem e um tensor de saída. Para ser mais específico, aqui estão os requisitos.

  • Tensor de imagem de entrada ( kTfLiteUInt8 / kTfLiteFloat32 )
    • entrada de imagem de tamanho [batch x height x width x channels] .
    • a inferência em lote não é suportada ( batch deve ser 1).
    • apenas entradas RGB são suportadas ( channels devem ter 3).
    • se type for kTfLiteFloat32 , NormalizationOptions deverá ser anexado aos metadados para normalização de entrada.
  • Tensor de imagem de saída ( kTfLiteUInt8 / kTfLiteFloat32 )
    • tensor de tamanho [batch x mask_height x mask_width x num_classes] , onde batch deve ser 1, mask_width e mask_height são as dimensões das máscaras de segmentação produzidas pelo modelo e num_classes é o número de classes suportadas pelo modelo.
    • mapas de rótulos opcionais (mas recomendados) podem ser anexados como AssociatedFile-s com tipo TENSOR_AXIS_LABELS, contendo um rótulo por linha. O primeiro AssociatedFile (se houver) é usado para preencher o nome da classe, ou seja, ColoredLabel.getlabel() dos resultados. O nome de exibição, ou seja, ColoredLabel.getDisplayName() , é preenchido a partir do AssociatedFile (se houver) cuja localidade corresponde ao campo `display_names_locale` do `ImageSegmenterOptions` usado no momento da criação ("en" por padrão, ou seja, inglês). Se nenhum destes estiver disponível, apenas o campo `index` dos resultados será preenchido.

Um exemplo desse modelo pode ser encontrado no TensorFlow Hub. .

Classes aninhadas

aula ImageSegmenter.ImageSegmenterOptions Opções para configurar um ImageSegmenter .

Métodos Públicos

Segmentador de imagem estático
createFromBuffer ( ByteBuffer modelBuffer)
Cria uma instância ImageSegmenter com um buffer de modelo e o ImageSegmenter.ImageSegmenterOptions padrão.
Segmentador de imagem estático
Segmentador de imagem estático
createFromFile (contexto de contexto, String modelPath)
Cria uma instância ImageSegmenter do ImageSegmenter.ImageSegmenterOptions padrão.
Segmentador de imagem estático
createFromFile ( Arquivo modelFile)
Cria uma instância ImageSegmenter do ImageSegmenter.ImageSegmenterOptions padrão.
Segmentador de imagem estático
Segmentador de imagem estático
Lista < Segmentação >
segmento (frameBufferHandle longo, opções ImageProcessingOptions )
Lista < Segmentação >
segmento (imagem TensorImage )
Executa segmentação real na imagem fornecida.
Lista < Segmentação >
segmento (imagem MlImage )
Executa a segmentação real no MlImage fornecido.
Lista < Segmentação >
segmento (imagem TensorImage , opções ImageProcessingOptions )
Executa a segmentação real na imagem fornecida com ImageProcessingOptions .
Lista < Segmentação >
segmento (imagem MlImage , opções ImageProcessingOptions )
Executa a segmentação real no MlImage fornecido com ImageProcessingOptions .

Métodos herdados

Métodos Públicos

public static ImageSegmenter createFromBuffer ( ByteBuffer modelBuffer)

Cria uma instância ImageSegmenter com um buffer de modelo e o ImageSegmenter.ImageSegmenterOptions padrão.

Parâmetros
modeloBuffer um ByteBuffer direto ou um MappedByteBuffer do modelo de segmentação
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o buffer do modelo não for um ByteBuffer direto ou um MappedByteBuffer

public static ImageSegmenter createFromBufferAndOptions (opções ByteBuffer modelBuffer, ImageSegmenter.ImageSegmenterOptions )

Cria uma instância ImageSegmenter com um buffer de modelo e ImageSegmenter.ImageSegmenterOptions .

Parâmetros
modeloBuffer um ByteBuffer direto ou um MappedByteBuffer do modelo de segmentação
opções
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o buffer do modelo não for um ByteBuffer direto ou um MappedByteBuffer

public static ImageSegmenter createFromFile (contexto de contexto, String modelPath)

Cria uma instância ImageSegmenter do ImageSegmenter.ImageSegmenterOptions padrão.

Parâmetros
contexto
caminho do modelo caminho do modelo de segmentação com metadados nos ativos
Lança
IOException se ocorrer um erro de E/S ao carregar o modelo tflite
Exceção de argumento ilegal se um argumento for inválido
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado

public static ImageSegmenter createFromFile ( Arquivo modelFile)

Cria uma instância ImageSegmenter do ImageSegmenter.ImageSegmenterOptions padrão.

Parâmetros
arquivomodelo o modelo de segmentação Instância File
Lança
IOException se ocorrer um erro de E/S ao carregar o modelo tflite
Exceção de argumento ilegal se um argumento for inválido
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado

public static ImageSegmenter createFromFileAndOptions (opções de arquivo modelFile, ImageSegmenter.ImageSegmenterOptions )

Parâmetros
arquivomodelo o modelo de segmentação Instância File
opções
Lança
IOException se ocorrer um erro de E/S ao carregar o modelo tflite
Exceção de argumento ilegal se um argumento for inválido
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado

public static ImageSegmenter createFromFileAndOptions (contexto de contexto, String modelPath, opções ImageSegmenter.ImageSegmenterOptions )

Parâmetros
contexto
caminho do modelo caminho do modelo de segmentação com metadados nos ativos
opções
Lança
IOException se ocorrer um erro de E/S ao carregar o modelo tflite
Exceção de argumento ilegal se um argumento for inválido
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado

public List < Segmentation > segment (frameBufferHandle longo, opções ImageProcessingOptions )

Parâmetros
quadroBufferHandle
opções

Lista pública < Segmentação > segmento (imagem TensorImage )

Executa segmentação real na imagem fornecida.

ImageSegmenter oferece suporte aos seguintes tipos de espaço de cores TensorImage :

Parâmetros
imagem um objeto UINT8 TensorImage que representa uma imagem RGB ou YUV
Devoluções
  • resultados da realização da segmentação de imagens. Observe que, naquele momento, espera-se que um único elemento Segmentation seja retornado. O resultado é armazenado em uma List para posterior extensão, por exemplo, para modelos de segmentação de instâncias, que podem retornar uma segmentação por objeto.
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o tipo de imagem do espaço de cores não for compatível

Lista pública < Segmentação > segmento (imagem MlImage )

Executa a segmentação real no MlImage fornecido.

Parâmetros
imagem um MlImage para segmentar.
Devoluções
  • resultados da realização da segmentação de imagens. Observe que, naquele momento, espera-se que um único elemento Segmentation seja retornado. O resultado é armazenado em uma List para posterior extensão, por exemplo, para modelos de segmentação de instâncias, que podem retornar uma segmentação por objeto.
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o tipo de armazenamento ou formato da imagem não for compatível

public List < Segmentation > segment (imagem TensorImage , opções ImageProcessingOptions )

Executa a segmentação real na imagem fornecida com ImageProcessingOptions .

ImageSegmenter oferece suporte aos seguintes tipos de espaço de cores TensorImage :

ImageSegmenter oferece suporte às seguintes opções:

Parâmetros
imagem um objeto TensorImage UINT8 que representa uma imagem RGB ou YUV
opções as opções configuram como pré-processar a imagem
Devoluções
  • resultados da realização da segmentação de imagens. Observe que, naquele momento, espera-se que um único elemento Segmentation seja retornado. O resultado é armazenado em uma List para posterior extensão, por exemplo, para modelos de segmentação de instâncias, que podem retornar uma segmentação por objeto.
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o tipo de imagem do espaço de cores não for compatível

lista pública < segmentação > segmento (imagem MlImage , opções ImageProcessingOptions )

Executa a segmentação real no MlImage fornecido com ImageProcessingOptions .

ImageSegmenter oferece suporte às seguintes opções:

Parâmetros
imagem um MlImage para segmentar.
opções as opções configuram como pré-processar a imagem.
Devoluções
  • resultados da realização da segmentação de imagens. Observe que, naquele momento, espera-se que um único elemento Segmentation seja retornado. O resultado é armazenado em uma List para posterior extensão, por exemplo, para modelos de segmentação de instâncias, que podem retornar uma segmentação por objeto.
Lança
IllegalStateException se houver um erro interno
Exceção de tempo de execução se houver um erro não especificado
Exceção de argumento ilegal se o tipo de imagem do espaço de cores não for compatível