Executa a extração de embedding 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.
- entrada de imagem de
- Pelo menos um tensor de saída (
kTfLiteUInt8
/kTfLiteFloat32
) com a forma[1 x N]
, em que N é o número de dimensões nos embeddings produzidos.
Classes aninhadas
classe | ImageEmbedder.ImageEmbedderOptions | Opções para configurar e ImageEmbedder . |
Métodos públicos
estático duplo |
cosineSimilarity(Embedding u, Embedding v)
Função de utilitário para calcular a semelhança de cossenos entre dois objetos
Embedding . |
estático ImageEmbedder |
createFromBuffer(contexto de contexto, modelBuffer ByteBuffer)
Cria uma instância
ImageEmbedder com base em um buffer de modelo e um ImageEmbedder.ImageEmbedderOptions padrão. |
estático ImageEmbedder |
createFromFile(contexto de contexto, modelPath String)
Cria uma instância
ImageEmbedder com base em um arquivo de modelo e um ImageEmbedder.ImageEmbedderOptions padrão. |
estático ImageEmbedder |
createFromFile(contexto de contexto, File modelFile)
Cria uma instância
ImageEmbedder com base em um arquivo de modelo e um ImageEmbedder.ImageEmbedderOptions padrão. |
estático ImageEmbedder |
createFromOptions(Contexto do contexto, opções de ImageEmbedder.ImageEmbedderOptions)
Cria uma instância
ImageEmbedder de uma instância ImageEmbedder.ImageEmbedderOptions . |
ImageEmbedderResult |
embed(imagem MPImage, ImageProcessingOptions imageprocessingOptions)
Executa a extração de embedding na imagem única fornecida.
|
ImageEmbedderResult | |
void |
embedAsync(imagem MPImage, ImageProcessingOptions imageprocessingOptions, long timestampMs)
Envia dados de imagem em tempo real para executar a extração de embedding, e os resultados estarão disponíveis pelo
OutputHandler.ResultListener fornecido no ImageEmbedder.ImageEmbedderOptions . |
void |
embedAsync(imagem MPImage, carimbos de data/hora longos)
Envia dados de imagem em tempo real para executar a extração de embedding com opções de processamento de imagem padrão,
ou seja,
|
ImageEmbedderResult |
embedForVideo(imagem MPImage, ImageProcessingOptions image ProcessingOptions, long timestampMs)
Executa a extração de embedding no frame de vídeo fornecido.
|
ImageEmbedderResult |
embedForVideo(imagem MPImage, carimbos de data/hora longos)
Executa a extração de incorporação no frame de vídeo fornecido com as opções de processamento de
imagem padrão, ou seja,
|
Métodos herdados
Métodos públicos
public Static double cosineSimilarity (Embedding u, Embedding v)
Função de utilitário para calcular a semelhança de cossenos entre dois objetos Embedding
.
Parâmetros
u | |
---|---|
v |
Gera
IllegalArgumentException | se os embeddings forem de tipos diferentes (flutuação vs. quantizados), tiverem tamanhos distintos ou uma norma L2 de 0. |
---|
público estático ImageEmbedder createFromBuffer (contexto de contexto, ByteBuffer modelBuffer)
Cria uma instância ImageEmbedder
com base em um buffer de modelo e um ImageEmbedder.ImageEmbedderOptions
padrão.
Parâmetros
contexto | um ERROR(/Context) do Android. |
---|---|
modelBuffer | um ByteBuffer direto ou um ERROR(/MappedByteBuffer) do modelo de embedding. |
Gera
se houver um erro durante a criação de ImageEmbedder .
|
público estático ImageEmbedder createFromFile (contexto de contexto, String modelPath)
Cria uma instância ImageEmbedder
com base em um arquivo de modelo e um ImageEmbedder.ImageEmbedderOptions
padrão.
Parâmetros
contexto | um ERROR(/Context) do Android. |
---|---|
modelPath | caminho para o modelo de embedding nos recursos. |
Gera
se houver um erro durante a criação de ImageEmbedder .
|
público estático ImageEmbedder createFromFile (contexto de contexto, arquivo modelFile)
Cria uma instância ImageEmbedder
com base em um arquivo de modelo e um ImageEmbedder.ImageEmbedderOptions
padrão.
Parâmetros
contexto | um ERROR(/Context) do Android. |
---|---|
modelFile | a instância File do modelo de embedding. |
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 ImageEmbedder .
|
public Static ImageEmbedder createFromOptions (Contexto do contexto, opções ImageEmbedder.ImageEmbedderOptions)
Cria uma instância ImageEmbedder
de uma instância ImageEmbedder.ImageEmbedderOptions
.
Parâmetros
contexto | um ERROR(/Context) do Android. |
---|---|
do modelo. | uma instância ImageEmbedder.ImageEmbedderOptions . |
Gera
se houver um erro durante a criação de ImageEmbedder .
|
public ImageEmbedderResult embed (MPImage image, ImageProcessingOptions imageprocessingOptions)
Executa a extração de embedding na imagem única fornecida. Use esse método somente quando o
ImageEmbedder
for criado com ERROR(/RunningMode.IMAGE)
.
ImageEmbedder
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 ImageEmbedderResult embed (MPImage)
Executa a extração de incorporaçã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 a aplicação de qualquer rotação.
Use esse método somente quando o ImageEmbedder
for criado com ERROR(/RunningMode.IMAGE)
.
ImageEmbedder
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 void embedAsync (imagem de MPImage, ImageProcessingOptions image ProcessingOptions, long timestampMs)
Envia dados de imagem em tempo real para executar a extração de embedding, e os resultados estarão disponíveis pelo
OutputHandler.ResultListener
fornecido no ImageEmbedder.ImageEmbedderOptions
. Use esse método apenas quando o ImageEmbedder
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.
ImageEmbedder
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 embedAsync (MPImage imagem, carimbos de data/hora longos)
Envia dados de imagem em tempo real para realizar a extração de incorporação com opções de processamento de imagem 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 ImageEmbedder.ImageEmbedderOptions
. Use esse método somente quando o ImageEmbedder
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.
ImageEmbedder
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 ImageEmbedderResult embedForVideo (MPImage image, ImageProcessingOptions imageprocessingOptions, long timestampMs)
Executa a extração de embedding no frame de vídeo fornecido. Use esse método somente quando o ImageEmbedder
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.
ImageEmbedder
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 ImageEmbedderResult embedForVideo (MPImage image, long timestampMs)
Executa a extração de incorporaçã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 a aplicação de qualquer rotação.
Use esse método somente quando o ImageEmbedder
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.
ImageEmbedder
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. |