in

Découvrez ce que vous segmentez avec SAM. Générez et visualisez n’importe quel segment… | par Jacob Marks, Ph.D. | Mai 2023


COMMENT GÉNÉRER ET VISUALISER LES PRÉDICTIONS DE SEGMENTATION DU MODELE “SEGMENT ANYTHING MODEL”

Le modèle de segmentation d’image à usage général de Meta AI Research, appelé Segment Anything Model (SAM) (licence Apache 2.0), a attiré beaucoup d’attention ces dernières semaines. Le modèle a été entraîné sur un ensemble de données comprenant 11 millions d’images et plus d’un milliard de masques de segmentation.

Avant de déployer le modèle en production, il est important de comprendre comment le modèle se comporte sur votre ensemble de données. Dans le contexte de la vision par ordinateur, un élément crucial dans cette équation est la visualisation des prédictions de modèle.

Dans ce post de blog, nous expliquerons comment utiliser SAM pour ajouter des masques de segmentation à votre ensemble de données, et comment visualiser systématiquement ces masques de segmentation sur l’ensemble de données. En visualisant (et évaluant) ces prédictions, nous pouvons mieux comprendre comment SAM fonctionne sur notre ensemble de données, ses limites et les impacts potentiels de l’intégration du modèle dans nos pipelines.

SAM offre plusieurs moyens de générer des masques de segmentation: automatique, à partir de bounding box ou à partir de points positifs ou négatifs.

GÉNÉRER DES MASQUES DE SEGMENTATION

Pour utiliser SAM, vous pouvez installer la bibliothèque Segment Anything depuis la source. Il est nécessaire d’installer Python 3.8 ou une version supérieure, de PyTorch 1.7 ou une version supérieure et de torchvision 0.8 ou une version supérieure. Il est également possible d’utiliser la bibliothèque de vision par ordinateur FiftyOne pour charger les ensembles de données et visualiser les prédictions.

SAM permet de générer des masques de segmentation automatiquement, à partir de bounding box ou à partir de points positifs ou négatifs. Vous pouvez utiliser la fonction propriétaire pour générer des masques de segmentation automatiques. Si vous avez des bounding box pour un objet, SAM segmentera l’objet délimité. Vous pouvez également fournir des points positifs ou négatifs pour que SAM infère la zone à segmenter. Enfin, vous pouvez fournir à la fois des points et des bounding box pour améliorer les performances.

VISUALISER LES PRÉDICTIONS

Pour visualiser les prédictions, nous utiliserons la bibliothèque de vision par ordinateur FiftyOne. Nous allons ajouter une segmentation de masque automatique à un échantillon unique en passant l’image associée à cet échantillon au générateur de masque. Pour chaque masque retourné, nous pouvons ajouter ce masque à notre masque d’image complet. Nous pouvons stocker ce masque d’image complet en tant qu’objet d’étiquette de segmentation sur notre ensemble de données.

Si vous avez des points positifs ou négatifs sur vos images, vous pouvez les utiliser pour guider le modèle SAM. Nous allons créer un prédicteur SAM qui sera utilisé pour la segmentation sémantique et la segmentation d’instance. Les points positifs ou négatifs sont représentés sous forme de Keypoints. Enfin, nous avons ajouté une fonction pour générer les points et les labels SAM à partir des points relatifs dans l’annotation FiftyOne.

What do you think?

Written by Barbara

Leave a Reply

Your email address will not be published. Required fields are marked *

Sparkmesh – Suivez facilement tous vos artistes musicaux préférés.

Courbe