ImageEmbedder

La classe publique finale ImageEmbedder

Effectue une extraction des représentations vectorielles continues sur les images.

L'API attend un modèle TFLite avec des métadonnées de modèle TFLite facultatives, mais fortement recommandées.

L'API prend en charge les modèles avec un Tensor d'entrée d'image et un ou plusieurs Tensors de sortie. Pour être plus précis, voici les conditions requises.

  • Tensor d'image d'entrée (kTfLiteUInt8/kTfLiteFloat32)
    • image d'entrée de taille [batch x height x width x channels].
    • L'inférence par lot n'est pas acceptée (la valeur de batch doit être définie sur 1).
    • Seules les entrées RVB sont acceptées (la valeur de channels doit être définie sur 3).
    • Si le type est kTfLiteFloat32, des options NormalizationOptions doivent être associées aux métadonnées pour la normalisation des entrées.
  • Au moins un Tensor de sortie (kTfLiteUInt8/kTfLiteFloat32) de forme [1 x N], où N correspond au nombre de dimensions des représentations vectorielles continues produites.

Classes imbriquées

classe ImageEmbedder.ImageEmbedderOptions Options de configuration et ImageEmbedder

Méthodes publiques

double statique
statique ImageEmbedder
createFromBuffer(contexte de contexte, modelBuffer ByteBuffer)
Crée une instance ImageEmbedder à partir d'un tampon de modèle et une ImageEmbedder.ImageEmbedderOptions par défaut.
statique ImageEmbedder
createFromFile(contexte de contexte, String modelPath)
Crée une instance ImageEmbedder à partir d'un fichier de modèle et est ImageEmbedder.ImageEmbedderOptions par défaut.
statique ImageEmbedder
createFromFile(contexte de contexte, File modelFile)
Crée une instance ImageEmbedder à partir d'un fichier de modèle et est ImageEmbedder.ImageEmbedderOptions par défaut.
statique ImageEmbedder
createFromOptions(contexte, options ImageEmbedder.ImageEmbedderOptions)
Crée une instance ImageEmbedder à partir d'une instance ImageEmbedder.ImageEmbedderOptions.
ImageEmbedderResult
embed(image MPImage, ImageProcessingOptions imageProcessingOptions)
Effectue une extraction de la représentation vectorielle continue sur l'image unique fournie.
ImageEmbedderResult
embed(image MPImage)
Effectue une extraction des représentations vectorielles continues sur l'image unique fournie avec les options de traitement d'image par défaut
void
embedAsync(image MPImage, ImageProcessingOptions imageProcessingOptions, long "timestampMs")
Envoie des données d'image actives pour effectuer une extraction de représentation vectorielle continue. Les résultats sont disponibles via le OutputHandler.ResultListener fourni dans ImageEmbedder.ImageEmbedderOptions.
void
embedAsync(image MPImage, code temporel long)
Envoie des données d'image en direct pour effectuer l'extraction des représentations vectorielles continues à l'aide des options de traitement d'image par défaut, telles que
ImageEmbedderResult
embedForVideo(image de MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Effectue une extraction de la représentation vectorielle continue sur l'image vidéo fournie.
ImageEmbedderResult
embedForVideo(image MPImage, code temporel long)
Effectue une extraction de représentations vectorielles continues sur l'image vidéo fournie avec les options de traitement d'image par défaut

Méthodes héritées

Méthodes publiques

public statique double cosineSimilarity (représentation vectorielle continue u, représentation vectorielle continue v)

Fonction utilitaire permettant de calculer la similarité cosinus entre deux objets Embedding.

Paramètres
u
v
Génère
IllegalArgumentException si les représentations vectorielles continues sont de types différents (nombre à virgule flottante ou quantifiée), ont des tailles différentes ou ont une norme L2 de 0.

public statique ImageEmbedder createFromBuffer (contexte de contexte, ByteBuffer modelBuffer)

Crée une instance ImageEmbedder à partir d'un tampon de modèle et une ImageEmbedder.ImageEmbedderOptions par défaut.

Paramètres
context un ERROR(/Context) Android.
modelBuffer un ByteBuffer direct ou un ERROR(/MappedByteBuffer) du modèle de représentation vectorielle continue.
Génère
si une erreur se produit lors de la création de ImageEmbedder.

public statique ImageEmbedder createFromFile (contexte de contexte, String modelPath)

Crée une instance ImageEmbedder à partir d'un fichier de modèle et est ImageEmbedder.ImageEmbedderOptions par défaut.

Paramètres
context un ERROR(/Context) Android.
modelPath d'accès au modèle de représentation vectorielle continue dans les éléments.
Génère
si une erreur se produit lors de la création de ImageEmbedder.

public statique ImageEmbedder createFromFile (contexte de contexte, File modelFile)

Crée une instance ImageEmbedder à partir d'un fichier de modèle et est ImageEmbedder.ImageEmbedderOptions par défaut.

Paramètres
context un ERROR(/Context) Android.
modelFile l'instance du modèle de représentation vectorielle continue File.
Génère
IOException si une erreur d'E/S se produit lors de l'ouverture du fichier de modèle tflite.
si une erreur se produit lors de la création de ImageEmbedder.

public statique ImageEmbedder createFromOptions (contexte de contexte, options ImageEmbedder.ImageEmbedderOptions)

Crée une instance ImageEmbedder à partir d'une instance ImageEmbedder.ImageEmbedderOptions.

Paramètres
context un ERROR(/Context) Android.
options une instance ImageEmbedder.ImageEmbedderOptions.
Génère
si une erreur se produit lors de la création de ImageEmbedder.

public ImageEmbedderResult embed (MPImage image, ImageProcessingOptions imageProcessingOptions)

Effectue une extraction de la représentation vectorielle continue sur l'image unique fournie. N'utilisez cette méthode que lorsque l'élément ImageEmbedder est créé avec ERROR(/RunningMode.IMAGE).

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
imageProcessingOptions Le ImageProcessingOptions, qui indique comment traiter l'image d'entrée avant d'exécuter l'inférence.
Génère
en cas d'erreur interne.

public ImageEmbedderResult embed (MPImage image)

Effectue une extraction de représentations vectorielles continues sur l'image unique fournie avec des options de traitement d'image par défaut, c'est-à-dire en utilisant l'image entière en tant que région d'intérêt et sans aucune rotation appliquée. N'utilisez cette méthode que lorsque le ImageEmbedder est créé avec ERROR(/RunningMode.IMAGE).

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
Génère
en cas d'erreur interne.

public void embedAsync (image MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)

Envoie des données d'image actives pour effectuer une extraction de représentation vectorielle continue. Les résultats sont disponibles via le OutputHandler.ResultListener fourni dans ImageEmbedder.ImageEmbedderOptions. N'utilisez cette méthode que lorsque le ImageEmbedder est créé avec ERROR(/RunningMode.LIVE_STREAM).

Il est nécessaire de fournir un horodatage (en millisecondes) pour indiquer le moment où l'image d'entrée est envoyée au détecteur d'objets. Les horodatages d'entrée doivent être croissants de manière monotone.

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
imageProcessingOptions Le ImageProcessingOptions, qui indique comment traiter l'image d'entrée avant d'exécuter l'inférence.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne.

public vide embedAsync (image MPImage, codes temporels longs)

Envoie des données d'image en direct pour effectuer une extraction de représentations vectorielles continues avec les options de traitement d'image par défaut, c'est-à-dire en utilisant l'image entière en tant que région d'intérêt et sans rotation appliquée. Les résultats seront disponibles via le OutputHandler.ResultListener fourni dans le ImageEmbedder.ImageEmbedderOptions. N'utilisez cette méthode que lorsque le ImageEmbedder est créé avec ERROR(/RunningMode.LIVE_STREAM).

Il est nécessaire de fournir un horodatage (en millisecondes) pour indiquer le moment où l'image d'entrée est envoyée au détecteur d'objets. Les horodatages d'entrée doivent être croissants de manière monotone.

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne.

public ImageEmbedderResult embedForVideo (MPImage image, ImageProcessingOptions imageProcessingOptions, longTimestampMs)

Effectue une extraction de la représentation vectorielle continue sur l'image vidéo fournie. N'utilisez cette méthode que lorsque le ImageEmbedder est créé avec ERROR(/RunningMode.VIDEO).

Il est obligatoire de fournir le code temporel de l'image vidéo (en millisecondes). Les horodatages d'entrée doivent être croissants de manière monotone.

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
imageProcessingOptions Le ImageProcessingOptions, qui indique comment traiter l'image d'entrée avant d'exécuter l'inférence.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne.

public ImageEmbedderResult embedForVideo (MPImage image, longTimestampMs)

Effectue une extraction de représentations vectorielles continues sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire en utilisant l'ensemble de l'image comme zone d'intérêt et sans aucune rotation appliquée. N'utilisez cette méthode que lorsque le ImageEmbedder est créé avec ERROR(/RunningMode.VIDEO).

Il est obligatoire de fournir le code temporel de l'image vidéo (en millisecondes). Les horodatages d'entrée doivent être croissants de manière monotone.

ImageEmbedder accepte les types d'espaces colorimétriques suivants:

Paramètres
Image un objet MPImage MediaPipe à traiter.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne.