Skip to content
Tutorials5 min read

Annotation par polygones pour les tâches de segmentation

Comment configurer les outils de dessin de polygones pour la segmentation d'images, avec des conseils pour les formes complexes et les régions superposées.

Potato Team·

Annotation par polygones pour les tâches de segmentation

L'annotation par polygones permet de délimiter les contours d'objets avec une précision au pixel pour la segmentation sémantique et par instances. Ce guide couvre la configuration, les techniques d'annotation et les bonnes pratiques pour les tâches de segmentation complexes.

Quand utiliser les polygones vs les boîtes englobantes

Utilisez les polygones quandUtilisez les boîtes englobantes quand
Des contours précis sont nécessairesUne localisation approximative suffit
Formes d'objets irrégulièresLes objets sont à peu près rectangulaires
Entraînement de modèles de segmentationEntraînement de modèles de détection
Objets superposésObjets non superposés
Précision élevée requiseLa vitesse est prioritaire

Configuration basique des polygones

yaml
annotation_task_name: "Image Segmentation"
 
data_files:
  - "data/images.json"
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [polygon]
    name: segments
    description: "Draw polygons around each object"
    labels:
      - name: road
        color: "#808080"
      - name: sidewalk
        color: "#F5F5DC"
      - name: building
        color: "#8B4513"
      - name: vegetation
        color: "#228B22"
      - name: sky
        color: "#87CEEB"
      - name: vehicle
        color: "#FF6B6B"
      - name: person
        color: "#4ECDC4"

Dessiner des polygones

Flux de travail basique

  1. Sélectionnez une étiquette dans la barre d'outils
  2. Cliquez pour placer des sommets autour de l'objet
  3. Double-cliquez ou appuyez sur Entrée pour fermer le polygone
  4. Ajustez les sommets en les faisant glisser
  5. Ajoutez des points en cliquant sur les arêtes

Raccourcis clavier

Potato fournit des raccourcis clavier intégrés pour l'édition de polygones :

  • Entrée : fermer le polygone en cours
  • Échap : annuler le dessin ou désélectionner
  • Suppr : supprimer le sommet ou le polygone sélectionné
  • +/- : zoom avant/arrière
  • Espace + glisser : déplacer l'image

Gérer les scénarios complexes

Objets superposés

Pour les tâches avec des objets superposés, les annotateurs peuvent dessiner plusieurs polygones qui se chevauchent. Chaque polygone est stocké séparément dans la sortie, permettant une annotation au niveau des instances où les objets peuvent s'occulter mutuellement.

Conseils pour les contours complexes

Lors de l'annotation d'objets avec des contours complexes :

  1. Utilisez plus de sommets pour les bords courbes afin de capturer la forme avec précision
  2. Zoomez lors du traçage de contours détaillés
  3. Travaillez systématiquement autour du périmètre de l'objet
  4. Utilisez le mode édition pour affiner les positions des sommets après le dessin initial

Configuration de la segmentation sémantique

Pour une segmentation d'image complète :

yaml
annotation_task_name: "Semantic Segmentation"
 
data_files:
  - "data/images.json"
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [polygon]
    name: semantic_segments
    description: "Segment the entire image"
    labels:
      - name: background
        color: "#000000"
      - name: road
        color: "#808080"
      - name: sidewalk
        color: "#F5F5DC"
      - name: building
        color: "#8B4513"
      - name: vegetation
        color: "#228B22"
      - name: sky
        color: "#87CEEB"
      - name: person
        color: "#4ECDC4"
      - name: vehicle
        color: "#FF6B6B"

Configuration de la segmentation par instances

Pour les instances individuelles d'objets :

yaml
annotation_task_name: "Instance Segmentation"
 
data_files:
  - "data/images.json"
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [polygon]
    name: instances
    description: "Draw polygons around each object instance"
    labels:
      - name: person
        color: "#4ECDC4"
      - name: car
        color: "#FF6B6B"
      - name: dog
        color: "#FFEAA7"

Chaque polygone dessiné sera stocké comme une annotation distincte, vous permettant de suivre les instances individuelles de chaque classe d'objets.

Exemple de configuration complète

yaml
annotation_task_name: "Cityscapes-style Segmentation"
 
data_files:
  - "data/urban_scenes.json"
 
annotation_schemes:
  - annotation_type: image_annotation
    tools: [polygon]
    name: segments
    description: "Segment all objects following Cityscapes protocol"
    labels:
      # Flat
      - name: road
        color: "#804080"
      - name: sidewalk
        color: "#F423E8"
      # Construction
      - name: building
        color: "#464646"
      - name: wall
        color: "#666666"
      - name: fence
        color: "#BE9999"
      # Nature
      - name: vegetation
        color: "#6B8E23"
      - name: terrain
        color: "#98FB98"
      # Sky
      - name: sky
        color: "#4682B4"
      # Human
      - name: person
        color: "#DC143C"
      - name: rider
        color: "#FF0000"
      # Vehicle
      - name: car
        color: "#00008B"
      - name: truck
        color: "#000046"
      - name: bus
        color: "#003C64"
      - name: motorcycle
        color: "#0000E6"
      - name: bicycle
        color: "#770B20"

Format de sortie

Les annotations par polygones sont enregistrées dans la sortie d'annotation avec les coordonnées de chaque sommet :

json
{
  "id": "img001",
  "annotations": {
    "segments": [
      {
        "label": "road",
        "points": [[0, 600], [100, 580], [200, 590], [0, 600]]
      },
      {
        "label": "car",
        "points": [[450, 400], [520, 400], [520, 480], [450, 480]]
      }
    ]
  }
}

Conseils pour des polygones de qualité

  1. Zoomez : travaillez à 2x ou plus pour les contours détaillés
  2. Utilisez les raccourcis clavier : bien plus rapide que de cliquer sur les outils
  3. Commencez par les éléments principaux : esquisse grossière d'abord, puis affinez
  4. Économie de sommets : utilisez le minimum de points nécessaires pour la précision
  5. Pauses régulières : le travail détaillé sur les polygones provoque de la fatigue

Prochaines étapes


Voir /docs/features/image-annotation pour la documentation complète sur les polygones.