ImageClassifier

classe final pública ImageClassifier

Executa a classificação em imagens.

A API espera um modelo do TFLite com Metadados de modelo do TFLite opcional, mas altamente recomendado.

A API oferece suporte a modelos com um tensor de entrada de imagem e um ou mais tensores de saída. Para ser mais específico, veja os requisitos.

  • Tensor de imagem de entrada (kTfLiteUInt8/kTfLiteFloat32)
    • entrada de imagem de [batch x height x width x channels].
    • a inferência em lote não é aceita (batch precisa ser 1).
    • apenas entradas RGB são aceitas (channels precisa ser 3).
    • Se o tipo for kTfLiteFloat32, as NormalizationOptions precisam ser anexadas aos metadados para a normalização de entrada.
  • Pelo menos um tensor de saída (kTfLiteUInt8/kTfLiteFloat32) com:
    • Classes N e duas ou quatro dimensões, ou seja, [1 x N] ou [1 x 1 x 1 x N]
    • mapa (s) de rótulo opcional(mas recomendado) como AssociatedFile-s com o tipo TENSOR_AXIS_LABELS, contendo um rótulo por linha. O primeiro AssociatedFile (se houver) é usado para preencher o campo class_name dos resultados. O campo display_name é preenchido a partir de AssociatedFile (se houver) com localidade que corresponde ao campo display_names_locale da ImageClassifierOptions usada no momento da criação ("en" por padrão, ou seja, inglês). Se nenhum deles estiver disponível, apenas o campo index dos resultados será preenchido.
    • A calibração de pontuação opcional pode ser anexada usando ScoreCalibrationOptions e um AssociatedFile com o tipo TENSOR_AXIS_SCORE_CALIBRATION. Consulte metadata_schema.fbs para mais detalhes.

Veja um exemplo desse modelo no TensorFlow Hub.

Classes aninhadas

classe ImageClassifier.ImageClassifierOptions Opções para configurar e ImageClassifier

Métodos públicos

ImageClassifierResult
classify(imagem MPImage)
Executa a classificação na imagem única fornecida com opções de processamento de imagem padrão, ou seja,
ImageClassifierResult
classify(imagem MPImage, ImageProcessingOptions imageprocessingOptions)
Executa a classificação na imagem única fornecida.
void
classifyAsync(imagem MPImage, ImageProcessingOptions imageprocessingOptions, carimbos de data/hora longos)
Envia dados de imagens em tempo real para realizar a classificação, e os resultados ficam disponíveis pelo OutputHandler.ResultListener fornecido no ImageClassifier.ImageClassifierOptions.
void
classifyAsync(imagem MPImage, carimbos de data/hora longos)
Envia dados de imagens em tempo real para realizar a classificação com as opções de processamento de imagem padrão, ou seja,
ImageClassifierResult
classifyForVideo(imagem MPImage, carimbos de data/hora longos)
Executa a classificação no frame de vídeo fornecido com as opções de processamento de imagem padrão, ou seja,
ImageClassifierResult
classifyForVideo(imagem MPImage, ImageProcessingOptions imageprocessingOptions, carimbos de data/hora longos)
Executa a classificação no frame de vídeo fornecido.
estático ImageClassifier
createFromBuffer(contexto de contexto, modelBuffer ByteBuffer)
Cria uma instância ImageClassifier com base em um buffer de modelo e um ImageClassifier.ImageClassifierOptions padrão.
estático ImageClassifier
createFromFile(contexto de contexto, modelPath String)
Cria uma instância ImageClassifier com base em um arquivo de modelo e um ImageClassifier.ImageClassifierOptions padrão.
estático ImageClassifier
createFromFile(contexto de contexto, File modelFile)
Cria uma instância ImageClassifier com base em um arquivo de modelo e um ImageClassifier.ImageClassifierOptions padrão.
estático ImageClassifier
createFromOptions(contexto de contexto, opções ImageClassifier.ImageClassifierOptions)
Cria uma instância ImageClassifier de uma instância ImageClassifier.ImageClassifierOptions.

Métodos herdados

Métodos públicos

public ImageClassifierResult classificar (MPImage)

Executa a classificação na imagem única fornecida com opções de processamento de imagem padrão, ou seja, usando a imagem inteira como região de interesse e sem aplicação de rotação. Use esse método somente quando o ImageClassifier for criado com ERROR(/RunningMode.IMAGE).

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
Gera
caso haja um erro interno.

public ImageClassifierResult classificar (imagem MPImage, ImageProcessingOptions imageprocessingOptions)

Executa a classificação na imagem única fornecida. Use esse método somente quando o ImageClassifier for criado com ERROR(/RunningMode.IMAGE).

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
imageProcessingOptions o ImageProcessingOptions que especifica como processar a imagem de entrada antes de executar a inferência.
Gera
caso haja um erro interno.

public void classifyAsync (MPImage, ImageProcessingOptions imageHandlingOptions, carimbos de data/hora longos)

Envia dados de imagens em tempo real para realizar a classificação, e os resultados ficam disponíveis pelo OutputHandler.ResultListener fornecido no ImageClassifier.ImageClassifierOptions. Use esse método apenas quando o ImageClassifier for criado com ERROR(/RunningMode.LIVE_STREAM).

É necessário informar um carimbo de data/hora (em milissegundos) para indicar quando a imagem de entrada é enviada ao detector de objetos. Os carimbos de data/hora de entrada precisam aumentar monotonicamente.

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
imageProcessingOptions o ImageProcessingOptions que especifica como processar a imagem de entrada antes de executar a inferência.
timestampMs o carimbo de data/hora de entrada (em milissegundos).
Gera
caso haja um erro interno.

public void classifyAsync (MPImage imagem, carimbos de data/hora longos)

Envia dados de imagens em tempo real para realizar a classificação com opções de processamento de imagens padrão, ou seja, usando a imagem inteira como região de interesse e sem nenhuma rotação aplicada, e os resultados estarão disponíveis por meio do OutputHandler.ResultListener fornecido no ImageClassifier.ImageClassifierOptions. Use esse método somente quando o ImageClassifier for criado com ERROR(/RunningMode.LIVE_STREAM).

É necessário informar um carimbo de data/hora (em milissegundos) para indicar quando a imagem de entrada é enviada ao detector de objetos. Os carimbos de data/hora de entrada precisam aumentar monotonicamente.

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
timestampMs o carimbo de data/hora de entrada (em milissegundos).
Gera
caso haja um erro interno.

public ImageClassifierResult classifyForVideo (MPImage image, long timestampMs)

Executa a classificação no frame de vídeo fornecido com opções de processamento de imagem padrão, ou seja, usando a imagem inteira como região de interesse e sem aplicação de rotação. Use esse método somente quando o ImageClassifier for criado com ERROR(/RunningMode.VIDEO).

É necessário fornecer o carimbo de data/hora do frame do vídeo (em milissegundos). Os carimbos de data/hora de entrada precisam aumentar monotonicamente.

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
timestampMs o carimbo de data/hora de entrada (em milissegundos).
Gera
caso haja um erro interno.

public ImageClassifierResult classifyForVideo (MPImage image, ImageProcessingOptions imageprocessingOptions, long timestampMs)

Executa a classificação no frame de vídeo fornecido. Use esse método somente quando o ImageClassifier for criado com ERROR(/RunningMode.VIDEO).

É necessário fornecer o carimbo de data/hora do frame do vídeo (em milissegundos). Os carimbos de data/hora de entrada precisam aumentar monotonicamente.

ImageClassifier oferece suporte aos seguintes tipos de espaço de cores:

Parâmetros
imagem um objeto MPImage do MediaPipe para processamento.
imageProcessingOptions o ImageProcessingOptions que especifica como processar a imagem de entrada antes de executar a inferência.
timestampMs o carimbo de data/hora de entrada (em milissegundos).
Gera
caso haja um erro interno.

public Static ImageClassifier createFromBuffer (contexto de contexto, ByteBuffer modelBuffer)

Cria uma instância ImageClassifier com base em um buffer de modelo e um ImageClassifier.ImageClassifierOptions padrão.

Parâmetros
contexto um ERROR(/Context) do Android.
modelBuffer um ByteBuffer direto ou um ERROR(/MappedByteBuffer) do modelo de classificação.
Gera
se houver um erro durante a criação de ImageClassifier.

public Static ImageClassifier createFromFile (contexto de contexto, String modelPath)

Cria uma instância ImageClassifier com base em um arquivo de modelo e um ImageClassifier.ImageClassifierOptions padrão.

Parâmetros
contexto um ERROR(/Context) do Android.
modelPath para o modelo de classificação nos recursos.
Gera
se houver um erro durante a criação de ImageClassifier.

público estático ImageClassifier createFromFile (contexto de contexto, arquivo modelFile)

Cria uma instância ImageClassifier com base em um arquivo de modelo e um ImageClassifier.ImageClassifierOptions padrão.

Parâmetros
contexto um ERROR(/Context) do Android.
modelFile a instância File do modelo de classificação.
Gera
IOException se ocorrer um erro de E/S ao abrir o arquivo do modelo do tflite.
se houver um erro durante a criação de ImageClassifier.

public Static ImageClassifier createFromOptions (Contexto de contexto, opções ImageClassifier.ImageClassifierOptions)

Cria uma instância ImageClassifier de uma instância ImageClassifier.ImageClassifierOptions.

Parâmetros
contexto um ERROR(/Context) do Android.
do modelo. uma instância ImageClassifier.ImageClassifierOptions.
Gera
se houver um erro durante a criação de ImageClassifier.