Bonjour,
j'ai besoin d'aide pour chercher un algorithme de polygonalisation que j'arrive pas à boucler durant quelques jours déjà voir semaine (en C++).
Problème : pour une image donnée que j'ai squelletisé, j'ai besoin de pouvoir approximer le résultat obtenu par un ensemble de segments qui approche la forme sachant que je vais travailler sur ces polygones d'approximation après.
Ce que j'ai fait :
Debut
Entrée : image de taille N*M (ligne colonne)
pour i =0 à N (parcours ligne)
pour j = 0 à M(colonne)
si pixel (i,j) != 0 //diff de fond
stack(i,j, label) //label est soit point extremite (car il s'agit d'une //courbe discrete non fermee, soit point milieu, soit connexion (point //ayant plus de deux voisin)
fin si
fin pour
fin pour
C'est la première étape de mon algorithme, que je pense exploitable pour la suite. Le problème se pose quand je veux relier tous les points spéciaux (extremite et connexion) déja pour avoir un segment (que je vais stocker dans une pile car j'aurai à l'utiliser) ... Je bloque sur comment relier tous ces points spéciaux dans "l'ordre de la courbe de squelette" pour approximer mes segments. Ou sinon si quelqu'un peut m'avancer un autre algo de polygonalisation, ca me sauverait beaucoup.
Merci d'avance
Partager