Exemple d’algorithme de segmentation

  • Ce document est issu de ‘Geometric Context from a single image’, le lien est à la fin du post.

Ce document a pour but non pas de découper l’image en objet sémantique mais en éléments contextuels qui pourraient être utile pour ce découpage fait ultérieurement. À partir de photos d’extérieur exposées sur le net les auteurs ont décris une analyse de scène modèle. Les images se découpent en 5 zones :

  • le ciel
  • un milieu intermédiaire qui se décompose lui-même en trois zones : gauche, droite, centre
  • un premier plan (le sol)

Les élements de la zone intermédaire peuvent en plus être orientées par l’extraction de caractéristiques de texture ou être définies comme non-planaire, poreuse (végétation par exemple), solide.

Voici la méthode appliquée en vue d’ensemble :

Algorithme de segmentation

Algorithme de segmentation

Deux parties sont à développer un peu plus :

Segmentation en régions homogènes : algorithme glouton

  1. ordonner aléatoirement les superpixels
  2. assigner les n_r premiers superpixels aux différentes régions
  3. itération :
    pour tous les autres superpixels
         pour toutes les régions
              calculer la fonction  ”learned pairwise affinity function”
         fin pour
         affecter le superpixel à la région qui présente un maximum selon la fonction
    fin pour
  4.  répéter la segmentation pour plusieurs nombres de régions n_r

La fonction “learner pairwise affinity function” citée plus tôt est une fonction qui évalue la probabilité que deux superpixels soient dans la même région (somme de logarithme)
Comparaison des données et classement selon la zone d’image la plus représentative

Après les segmentations précédentes on obtient des superpixels qui appartiennent à plusieurs régions (une pour chaque critère de segmentation). Chaque région est alors liée à une zone de l’image ou plusieurs. Les zones ciel/intermédiaire/bas et gauche/centre/droite sont évaluées séparément. L’algorithme détermine par exemple une gauche, un centre, et une droite pour l’image du ciel mais ne le renvoie pas.

Pour répartir les régions selon les principales zones de l’image les auteurs utilisent une version de régression logistique d’Adaboost avec classifieurs faibles et basée sur un arbre de décision à 8 nœuds. Les distributions de poids sont initialisées par le pourcentage que représente la région de l’image analysée.

Résultats de l’algorithme :

  • 86% d’assignation correcte pour les ciel/intermédiaire/bas
  • 52% pour les zones gauche/centre/droite : zones plus difficiles à déterminer

Après segmentation selon les méthodes habituelles avec et sans données contextuelles fournies par cette algorithme il s’est avéré que l’extraction du contexte avait un impact très favorable à la segmentation d’image.

Référence

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Twitter picture

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Connexion à %s