C30 : article optimisé : masquage automatique avec Segment Anything

Introduction

Dans l'article précédent, nous avons appris que le masquage automatique est une technique essentielle dans les flux de travail de retouche d'image, en particulier lorsqu'il s'agit d'isoler les sujets au premier plan des arrière-plans pour des tâches comme l'inpainting ou le compositing. Dans cet article, nous explorerons comment utiliser le modèle Segment Anything (SAM 2) avec ComfyUI pour automatiser le processus de masquage. En tirant parti de nœuds et de flux de travail personnalisés, vous pouvez définir efficacement des masques, adoucir les bords et remplacer les arrière-plans.



Composants clés du masquage automatique

1. Installer les paquets de nœuds et les modèles requis

Pour commencer le masquage automatique, vous devez installer les éléments suivants :

  • Paquets de nœuds :
    Utilisez le Gestionnaire ComfyUI pour rechercher et installer ces paquets de nœuds. Une fois installés, redémarrez ComfyUI.
  • Modèle SAM 2 :
    • Téléchargez le sam2.1_hiera_base_plus-fp16 modèle depuis Hugging Face.
    • Placez le modèle dans le ComfyUI/models/Sam2 répertoire. Si le modèle n'est pas installé automatiquement, suivez les étapes d'installation manuelle indiquées sur la page Hugging Face.

2. Configurer le flux de travail

Une fois les outils requis installés, vous pouvez créer un flux de travail pour le masquage automatique. Voici un guide étape par étape :

Charger les images

Commencez par charger les images de premier plan et d'arrière-plan dans ComfyUI à l'aide des Load Image nœuds dans ComfyUI. Assurez-vous de connaître la résolution de l'image, car elle est nécessaire pour la segmentation.

Obtenir la résolution de l'image

Utilisez le Get Image Size nœud du pack Essentials pour extraire la largeur et la hauteur des images chargées. Connectez la sortie du Load Image nœud au Get Image Size nœud.

Définir les coordonnées de segmentation

Pour spécifier les points de segmentation :

  1. Ajoutez le Points Editor nœud du pack KJNodes.
  2. Connectez les sorties d'image, de largeur et de hauteur du Get Image Size nœud au Points Editor.
  3. Faites un clic droit sur le Points Editor nœud et choisissez :
    • Convertir le widget en entrée pour la largeur et la hauteur.
    • Nouveau canevas pour créer un canevas vierge.
Charger le modèle SAM 2
  1. Ajoutez le Download SAM 2 Model nœud et assurez-vous que les paramètres du modèle sont définis comme suit :
    • Modèle : sam2_hiera_base_plus
    • Appareil : cuda
    • Précision : floating.16
  2. Connectez la sortie du nœud de chargement au SAM 2 Segmentation nœud.
Créer le masque de segmentation
  1. Ajoutez le SAM 2 Segmentation nœud.
  2. Connectez l'image et les coordonnées (points positifs et négatifs) du Points Editor nœud au nœud de segmentation.
  3. Prévisualisez la sortie du masque à l'aide du Mask Preview nœud du pack Essentials.

3. Améliorer la qualité du masque

Adoucir les bords avec le flou

Pour affiner le masque, utilisez le Grow Mask with Blur nœud du pack KJNodes :

  1. Placez le Grow Mask with Blur nœud entre le SAM 2 Segmentation nœud et le Image Composite Mask nœud.
  2. Ajustez les paramètres suivants :
    • Rayon de flou : réglez sur 2 pour des bords plus lisses.
    • Valeur d'expansion : réglez sur 2 pixels pour agrandir légèrement le masque.
  3. Utilisez le Mask Preview nœud pour visualiser les modifications en temps réel.
Composer le masque

Connectez la sortie du Grow Mask with Blur nœud au Image Composite Mask nœud. Cela vous permet de remplacer l'arrière-plan tout en préservant l'intégrité du sujet au premier plan.


4. Enregistrer l'image finale

Une fois satisfait du masque et du remplacement de l'arrière-plan :

  1. Ajoutez un Save Image Extended nœud pour enregistrer la sortie sur le disque.
  2. Assurez-vous que le Queue Mode est défini sur Queue.
  3. Annulez le contournement du nœud d'enregistrement avec Ctrl + B et mettez le flux de travail en file d'attente pour enregistrer l'image.

Exemple de flux de travail

Voici un exemple de configuration du flux de travail :

1. Load Image Node → Get Image Size Node → Points Editor Node  
2. Download SAM 2 Model Node → SAM 2 Segmentation Node → Mask Preview Node  
3. Grow Mask with Blur Node → Image Composite Mask Node → Save Image Extended Node  


Améliorer la précision du masque

Pour garantir une précision optimale du masque :

  • Utilisez le Points Editor nœud pour définir avec précision les points de premier plan et d'arrière-plan.
  • Testez les valeurs de flou et d'expansion dans le Grow Mask with Blur nœud pour équilibrer la douceur des bords et la couverture du masque.

Références

Laisser un commentaire