Segmentation d'une image par région en C

Signaler
Messages postés
3
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
14 décembre 2010
-
Messages postés
3
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
14 décembre 2010
-
Bonjour,

J'espère que j'ai créé mon sujet dans la bonne catégorie.
Voila mon problème, je cherche à créer un programme en C permettant de segmenter une image en niveau de gris par région. J'ai déjà fait toute la partie chargement de l'image et réécriture de celle ci ainsi que la transformer en niveau de gris. Plus clairement je charge mon image et j'obtient un tableau de float de la taille de l'image où chaque cellule du tableau représente un pixel en niveau de gris (0 à 255). Le problème maintenant est que je cherche à créer des régions selon un paramètre de différence entre les pixel pour les fusionner. J'ai vus que l'utilisation des structure de donné était conseillé mais étant débutant en C je n'ai pas réussi à cerner le concepte des structure de données. Si vous avez des exemples d'utilisation de structure de donné ou/et des exemples d'algorithme de segmentation d'image par région je suis preneur. J'utilise la bibliothèque libpng et je me suis inspiré du code de io_png.

Merci beaucoup d'avance pour votre aide et vos réponse.

Cordialement.

Minou

5 réponses

Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Bonjour,

Une petite remarque au passage: pourquoi allouer un tableau de float pour stocker des pixels entre 0 et 255! On utilise des unsigned char (8 bits)

Pour tout ce qui est segmentation des images, regarde du coté de mes sources, j'en ai fait plein sur ce sujet
http://www.codes-sources.com/auteur/PISTOLPETE/352018.aspx
A+

____________________________________________________________________________
Logiciel en traitement de l'image gratuit et open source.
Messages postés
3
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
14 décembre 2010

Bonjour et merci pour ta réponse.

Pour avoir mon tableau je me suis aidé du programme de io_png et de la fonction read_png_f32_gray qui retourne automatiquement un tableau de float.


Merci pour ton lien je vais allé y jeter un coup d'oeil.

A+
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Tu devrais alors plutot utiliser la fonction read_png_u8() qui te retourne un unsigned char

Tiens nous au courant de tes progrès.
A+

____________________________________________________________________________
Logiciel en traitement de l'image gratuit et open source.
Messages postés
792
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
12 juillet 2019
8
Bonjour,
voilà un autre article :
http://www.codeproject.com/KB/cs/Image_Histograms.aspx



louis
Messages postés
3
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
14 décembre 2010

Merci pour ta réponse louis14. La création de région via l'Histogramme est la deuxième partie de mon projet ^^.

J'ai regardé dans tes programmes Pistol_Pete mais je sais pas si sa peut m'aider car tu as fait tes programme en C++ (sauf si je me trompe) et franchement je ne connais rien au C++ ^^. J'ai vu le programme sur la segmentation de l'image par croissance de région mais mon projet m'impose une fusion des pixels (ou plutôt des régions) en lisant l'image pixel par pixel et avoir la possibilité à la fin de ressortir la région à qui appartient le pixel (c'est possible que je n'est rien compris au concepte de croissance des régions lol^^). Mes professeurs mon conseillé fortement sur les structures de données, le souci c'est que je n'est jamais vue les structure de donné donc je ne sais pas du tout comment sa marche et les topics sur internet me semble flou.