ImageSegmenter

classe publique finale ImageSegmenter

Effectue une segmentation des images.

Notez qu'en plus de l'API de segmentation standard ERROR(/segment) et ERROR(/segmentForVideo), qui utilise une image d'entrée et renvoie les sorties, mais implique une copie complète des retours, ImageSegmenter est également compatible avec l'API de rappel, ERROR(/segmentWithResultListener) et ERROR(/segmentForVideoWithResultListener), ce qui vous permet d'accéder aux sorties via zéro copie.

L'API de rappel est disponible pour tous les RunningMode dans ImageSegmenter. Définissez correctement OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions pour utiliser l'API de rappel.

L'API attend un modèle TFLite avec les métadonnées de modèle TFLite.

  • Image d'entrée MPImage
    • Image sur laquelle le segmentation d'image s'exécute.
  • ImageSegmenterResult de sortie ImageSegmenterResult
    • ImageSegmenterResult contenant des masques segmentés.

Classes imbriquées

classe ImageSegmenter.ImageSegmenterOptions Options de configuration d'un ImageSegmenter
classe ImageSegmenter.SegmentationOptions Options de configuration du comportement d'exécution de ImageSegmenter

Méthodes publiques

ImageSegmenter statique
List<String>
getLabels()
Permet d'obtenir la liste des libellés de catégorie que ImageSegmenter reconnaît.
ImageSegmenterResult
segment(image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions)
Effectue une segmentation de l'image unique fournie.
ImageSegmenterResult
segment(image MPImage, ImageProcessingOptions imageProcessingOptions)
Effectue une segmentation de l'image unique fournie.
ImageSegmenterResult
segment(image MPImage)
Effectue une segmentation de l'image unique fournie avec des options de traitement d'image par défaut, c'est-à-dire
void
segmentAsync(image MPImage, ImageProcessingOptions imageProcessingOptions, long "timestampMs")
Envoie des données d'image en direct pour effectuer la segmentation d'image, et les résultats seront disponibles via le OutputHandler.ResultListener fourni dans le ImageSegmenter.ImageSegmenterOptions.
void
segmentAsync(image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions, long code temporelMs)
Envoie des données d'image en direct pour effectuer la segmentation d'image, et les résultats seront disponibles via le OutputHandler.ResultListener fourni dans le ImageSegmenter.ImageSegmenterOptions.
void
segmentAsync(image MPImage, code temporel long)
Envoie des données d'image en direct pour effectuer une segmentation de l'image avec les options de traitement d'image par défaut, c'est-à-dire
ImageSegmenterResult
segmentForVideo(image MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Effectue une segmentation d'image sur l'image vidéo fournie.
ImageSegmenterResult
segmentForVideo(image MPImage, code temporel long)
Effectue une segmentation de l'image sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire
ImageSegmenterResult
segmentForVideo(image de MPImage, ImageSegmenter.SegmentationOptions segmentationOptions, long code temporelMs)
Effectue une segmentation d'image sur l'image vidéo fournie.
void
segmentForVideoWithResultListener(image de MPImage, ImageProcessingOptions imageProcessingOptions, longTimestampMs)
Effectue une segmentation d'image sur l'image vidéo fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions.
void
segmentForVideoWithResultListener(image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions, long code temporelMs)
Effectue une segmentation d'image sur l'image vidéo fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions.
void
segmentForVideoWithResultListener(image MPImage, code temporel long)
Effectue une segmentation de l'image sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire
void
segmentWithResultListener(image de MPImage, ImageProcessingOptions imageProcessingOptions)
Effectue une segmentation d'image sur l'image unique fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions.
void
segmentWithResultListener(image MPImage)
Effectue une segmentation de l'image unique fournie avec des options de traitement d'image par défaut, c'est-à-dire
void
segmentWithResultListener(image de MPImage, ImageSegmenter.SegmentationOptions segmentationOptions)
Effectue une segmentation d'image sur l'image unique fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions.

Méthodes héritées

Méthodes publiques

public statique ImageSegmenter createFromOptions (contexte de contexte, ImageSegmenter.ImageSegmenterOptionssegmentOptions)

Crée une instance ImageSegmenter à partir d'un ImageSegmenter.ImageSegmenterOptions.

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

public List<String> getLabels ()

Permet d'obtenir la liste des libellés de catégorie que ImageSegmenter reconnaît. Pour le type CATEGORY_MASK, l'index du masque de catégorie correspond à la catégorie de la liste d'étiquettes. Pour le type CONFIDENCE_MASK, la liste des masques de sortie au niveau de l'index correspond à la catégorie figurant dans la liste d'étiquettes.

Si aucun labelmap n'est fourni dans le fichier de modèle, une liste d'étiquettes vide est renvoyée.

public ImageSegmenterResult segment (MPImage image, ImageSegmenter.SegmentationOptions segmentationOptions)

Effectue une segmentation de l'image unique fournie. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE). TODO pour mettre à jour le document Java pour le format d'image d'entrée.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
segmentationOptions ImageSegmenter.SegmentationOptions utilisé pour configurer le comportement d'exécution de ImageSegmenter.
Génère
en cas d'erreur interne. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

public ImageSegmenterResult segment (MPImage image, ImageProcessingOptions imageProcessingOptions)

Effectue une segmentation de l'image unique fournie. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE). À FAIRE mettre à jour le document Java pour le format d'image d'entrée.

ImageSegmenter 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. Notez que la valeur de la région d'intérêt n'est pas prise en charge par cette tâche. Si vous spécifiez ImageProcessingOptions.regionOfInterest(), cette méthode générera une exception IllegalArgumentException.
Génère
IllegalArgumentException si ImageProcessingOptions spécifie une région d'intérêt.
en cas d'erreur interne. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

public ImageSegmenterResult segment (MPImage image)

Effectue une segmentation de l'image fournie avec des options de traitement d'image par défaut, c'est-à-dire sans rotation appliquée. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE). À FAIRE mettre à jour le document Java pour le format d'image d'entrée.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
Génère
en cas d'erreur interne. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

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

Envoie des données d'image en direct pour effectuer la segmentation d'image, et les résultats seront disponibles via le OutputHandler.ResultListener fourni dans le ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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 segmentage d'images. Les horodatages d'entrée doivent être croissants de manière monotone.

ImageSegmenter 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. Notez que la valeur de la région d'intérêt n'est pas prise en charge par cette tâche. Si vous spécifiez ImageProcessingOptions.regionOfInterest(), cette méthode générera une exception IllegalArgumentException.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
IllegalArgumentException si ImageProcessingOptions spécifie une région d'intérêt.
en cas d'erreur interne.

public vide segmentAsync (image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions, longtimestampMs)

Envoie des données d'image en direct pour effectuer la segmentation d'image, et les résultats seront disponibles via le OutputHandler.ResultListener fourni dans le ImageSegmenter.ImageSegmenterOptions. N'utilisez cette méthode que lorsque le ImageSegmenter 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 segmentage d'images. Les horodatages d'entrée doivent être croissants de manière monotone.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
segmentationOptions ImageSegmenter.SegmentationOptions utilisé pour configurer le comportement d'exécution de ImageSegmenter.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne.

public vide segmentAsync (image MPImage, codes temporels longs)

Envoie des données d'image en direct pour effectuer la segmentation de l'image avec les options de traitement d'image par défaut, c'est-à-dire sans rotation appliquée, et les résultats sont disponibles via le OutputHandler.ResultListener fourni dans ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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 segmentage d'images. Les horodatages d'entrée doivent être croissants de manière monotone.

ImageSegmenter 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 ImageSegmenterResult segmentForVideo (MPImage image, ImageProcessingOptions imageProcessingOptions, longTimestampMs)

Effectue une segmentation d'image sur l'image vidéo fournie. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

ImageSegmenter 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. Notez que la valeur de la région d'intérêt n'est pas prise en charge par cette tâche. Si vous spécifiez ImageProcessingOptions.regionOfInterest(), cette méthode générera une exception IllegalArgumentException.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
IllegalArgumentException si ImageProcessingOptions spécifie une région d'intérêt.
en cas d'erreur interne. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

public ImageSegmenterResult segmentForVideo (MPImage image, longTimestampMs)

Effectue une segmentation de l'image sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire sans rotation appliquée. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

ImageSegmenter 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. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

public ImageSegmenterResult segmentForVideo (MPImage image, ImageSegmenter.SegmentationOptions segmentationOptions, long timestampMs)

Effectue une segmentation d'image sur l'image vidéo fournie. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
segmentationOptions ImageSegmenter.SegmentationOptions utilisé pour configurer le comportement d'exécution de ImageSegmenter.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne. Ou si ImageSegmenter est créé avec un OutputHandler.ResultListener.

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

Effectue une segmentation d'image sur l'image vidéo fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
imageProcessingOptions
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
IllegalArgumentException si ImageProcessingOptions spécifie une région d'intérêt.
en cas d'erreur interne. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.

public vide segmentForVideoWithResultListener (image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions, longTimestampMs)

Effectue une segmentation d'image sur l'image vidéo fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
segmentationOptions ImageSegmenter.SegmentationOptions utilisé pour configurer le comportement d'exécution de ImageSegmenter.
timestampMs l'horodatage d'entrée (en millisecondes) ;
Génère
en cas d'erreur interne. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.

public void segmentForVideoWithResultListener (image MPImage, code temporel long)

Effectue une segmentation de l'image sur l'image vidéo fournie avec les options de traitement d'image par défaut, c'est-à-dire sans appliquer de rotation, et fournit des résultats non copiés via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter 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.

ImageSegmenter 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. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.

public void segmentWithResultListener (image MPImage, ImageProcessingOptions imageProcessingOptions)

Effectue une segmentation d'image sur l'image unique fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE).

À FAIRE mettre à jour le document Java pour le format d'image d'entrée.

ImageSegmenter 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. Notez que la valeur de la région d'intérêt n'est pas prise en charge par cette tâche. Si vous spécifiez ImageProcessingOptions.regionOfInterest(), cette méthode générera une exception IllegalArgumentException.
Génère
IllegalArgumentException si ImageProcessingOptions spécifie une région d'intérêt.
en cas d'erreur interne. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.

public void segmentWithResultListener (MPImage image)

Effectue une segmentation de l'image fournie avec des options de traitement d'image par défaut, c'est-à-dire sans appliquer de rotation, et fournit des résultats non copiés via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. Le masque de sortie a la même taille que l'image d'entrée. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE).

À FAIRE mettre à jour le document Java pour le format d'image d'entrée.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
Génère
en cas d'erreur interne. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.

public vide segmentWithResultListener (image MPImage, ImageSegmenter.SegmentationOptions segmentationOptions)

Effectue une segmentation d'image sur l'image unique fournie et fournit des résultats sans copie via OutputHandler.ResultListener dans ImageSegmenter.ImageSegmenterOptions. N'utilisez cette méthode que lorsque le ImageSegmenter est créé avec ERROR(/RunningMode.IMAGE).

À FAIRE mettre à jour le document Java pour le format d'image d'entrée.

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

Paramètres
Image un objet MPImage MediaPipe à traiter.
segmentationOptions ImageSegmenter.SegmentationOptions utilisé pour configurer le comportement d'exécution de ImageSegmenter.
Génère
en cas d'erreur interne. Ou si ImageSegmenter n'est pas créé avec OutputHandler.ResultListener défini dans ImageSegmenter.ImageSegmenterOptions.