Effectue une classification des 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.
- image d'entrée de taille
- Au moins un Tensor de sortie (
kTfLiteUInt8
/kTfLiteFloat32
) avec :- Classes
N
et deux ou quatre dimensions, par exemple[1 x N]
ou[1 x 1 x 1 x N]
- Mappages de libellés facultatifs (mais recommandés) en tant que AssociatFiles de type TENSOR_AXIS_LABELS, contenant un libellé par ligne. Le premier AssociatFile (le cas échéant) est utilisé pour remplir le champ
class_name
des résultats. Le champdisplay_name
est renseigné à partir de l'objet associé (le cas échéant) dont les paramètres régionaux correspondent au champdisplay_names_locale
de l'élémentImageClassifierOptions
utilisé au moment de la création ("en" par défaut, c'est-à-dire l'anglais). Si aucune de ces options n'est disponible, seul le champindex
des résultats sera renseigné. - un calibrage de score facultatif à l'aide de ScoreCalibrationOptions et d'un AssociatFile de type TENSOR_AXIS_SCORE_CALIBRATION. Pour en savoir plus, consultez metadata_schema.fbs.
- Classes
Vous trouverez un exemple de ce type de modèle sur la page TensorFlow Hub.
Classes imbriquées
classe | ImageClassifier.ImageClassifierOptions | Options de configuration et ImageClassifier . |
Méthodes publiques
ImageClassifierResult | |
ImageClassifierResult |
classify(image MPImage, ImageProcessingOptions imageProcessingOptions)
Effectue une classification sur l'image unique fournie.
|
void |
classifyAsync(image MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Envoie des données d'image en direct pour effectuer la classification. Les résultats sont disponibles via le
OutputHandler.ResultListener fourni dans le ImageClassifier.ImageClassifierOptions . |
void |
classifyAsync(image MPImage, code temporel long)
Envoie des données d'image en direct pour effectuer une classification avec les options de traitement d'image par défaut (par exemple,
|
ImageClassifierResult |
classifyForVideo(image MPImage, code temporel long)
Effectue une classification sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire
|
ImageClassifierResult |
classifyForVideo(image MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Effectue une classification sur l'image vidéo fournie.
|
ImageClassifier statique |
createFromBuffer(contexte de contexte, modelBuffer ByteBuffer)
Crée une instance
ImageClassifier à partir d'un tampon de modèle et une ImageClassifier.ImageClassifierOptions par défaut. |
ImageClassifier statique |
createFromFile(contexte de contexte, String modelPath)
Crée une instance
ImageClassifier à partir d'un fichier de modèle et est ImageClassifier.ImageClassifierOptions par défaut. |
ImageClassifier statique |
createFromFile(contexte de contexte, File modelFile)
Crée une instance
ImageClassifier à partir d'un fichier de modèle et est ImageClassifier.ImageClassifierOptions par défaut. |
ImageClassifier statique |
createFromOptions(contexte de contexte, options ImageClassifier.ImageClassifierOptions)
Crée une instance
ImageClassifier à partir d'une instance ImageClassifier.ImageClassifierOptions . |
Méthodes héritées
Méthodes publiques
public ImageClassifierResult classify (MPImage image)
Effectue une classification 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 rotation appliquée. N'utilisez cette méthode que lorsque l'élément ImageClassifier
est créé avec ERROR(/RunningMode.IMAGE)
.
ImageClassifier
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 ImageClassifierResult classify (MPImage image, ImageProcessingOptions imageProcessingOptions)
Effectue une classification sur l'image unique fournie. N'utilisez cette méthode que lorsque le ImageClassifier
est créé avec ERROR(/RunningMode.IMAGE)
.
ImageClassifier
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 void classifyAsync (MPImage image, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Envoie des données d'image en direct pour effectuer la classification. Les résultats sont disponibles via le OutputHandler.ResultListener
fourni dans le ImageClassifier.ImageClassifierOptions
. N'utilisez cette méthode que lorsque le ImageClassifier
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.
ImageClassifier
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 void classifyAsync (image MPImage, code temporel long)
Envoie des données d'image en direct pour effectuer une classification 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 ImageClassifier.ImageClassifierOptions
. N'utilisez cette méthode que lorsque le ImageClassifier
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.
ImageClassifier
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 ImageClassifierResult classifyForVideo (image MPImage, code temporel long)
Effectue une classification sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire en utilisant l'image entière comme zone d'intérêt et sans rotation appliquée. N'utilisez cette méthode que lorsque l'élément ImageClassifier
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.
ImageClassifier
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 ImageClassifierResult classifyForVideo (MPImage image, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Effectue une classification sur l'image vidéo fournie. N'utilisez cette méthode que lorsque le ImageClassifier
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.
ImageClassifier
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 statique ImageClassifier createFromBuffer (contexte de contexte, ByteBuffer modelBuffer)
Crée une instance ImageClassifier
à partir d'un tampon de modèle et une ImageClassifier.ImageClassifierOptions
par défaut.
Paramètres
context | un ERROR(/Context) Android. |
---|---|
modelBuffer | une ByteBuffer directe ou un ERROR(/MappedByteBuffer) du modèle de classification. |
Génère
si une erreur se produit lors de la création de ImageClassifier .
|
public statique ImageClassifier createFromFile (contexte de contexte, String modelPath)
Crée une instance ImageClassifier
à partir d'un fichier de modèle et est ImageClassifier.ImageClassifierOptions
par défaut.
Paramètres
context | un ERROR(/Context) Android. |
---|---|
modelPath | vers le modèle de classification dans les éléments. |
Génère
si une erreur se produit lors de la création de ImageClassifier .
|
public statique ImageClassifier createFromFile (contexte de contexte, File modelFile)
Crée une instance ImageClassifier
à partir d'un fichier de modèle et est ImageClassifier.ImageClassifierOptions
par défaut.
Paramètres
context | un ERROR(/Context) Android. |
---|---|
modelFile | l'instance du modèle de classification 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 ImageClassifier .
|
public statique ImageClassifier createFromOptions (contexte de contexte, options ImageClassifier.ImageClassifierOptions)
Crée une instance ImageClassifier
à partir d'une instance ImageClassifier.ImageClassifierOptions
.
Paramètres
context | un ERROR(/Context) Android. |
---|---|
options | une instance ImageClassifier.ImageClassifierOptions . |
Génère
si une erreur se produit lors de la création de ImageClassifier .
|