[C] Recuperation des donnes d un fichier pgm

Résolu/Fermé
niark - 3 mai 2005 à 22:06
 hulk - 13 juin 2005 à 22:31
Salut

J ai un probleme assez facile a resoudre a mon avis mais pour le moment je bloque 1 peu...

en fait faut que je recupere les valeurs des pixels d un fichier pgm en C pour pouvoir apres faire un traitement dessus ( ici c est un filtre de sobel)

Je recupere bien l en tete et les differents valeurs pour la resolution de l image ainsi que la valeur max d un pixel mais bizarrememt je n arrive pas avec les valeurs des pixels


fgets (info, 10, fpr);
if (strncmp (info, "P2", 2) != 0)
{
printf ("Mauvais format de fichier\n");
fclose (fpr);
fclose (fpw);
}


fgets (info, 70, fpr);

if ((strncmp (info, "#", 1)) == 0)
{
fgets (info, 10, fpr);
}

sscanf (info, "%d %d", &largeur, &hauteur);

Ca fonctionne bien pour les en tetes mais par contre ca ne fonctionne pas pour les valeurs des pixels. Ca vient probablement du fait que je prends trop de caracteres avec le fgets donc je ne sais pas trop combien d entier je recupere

j ai essaye d utiliser fgetc mais j aimerai bien stocker la valeur du pixel dans un tableau pour faire le traitement avant de l ecrire dans le fichier... et vu que la valeur renvoye par fgetc ne correspond pas a la valeur du pixel je ne sais pas trop comment faire pour continuer

je me complique probablement mais je suis bloque pour le moment lol merci :)
A voir également:

3 réponses

kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
4 mai 2005 à 09:28
Pour cela, il faut d'abord connaitre la structure exacte du fichier pgm, c'est à dire de quelle facon il a été créé. Si tu cannais ca, tu saura alors implémenter un méthode pour lire un à un les pixels... moi je ne connais pas sa structure alors je peux pas plus t'aider, dsl
++
0
la structure que j'ai est la suivante :

P2
largeur hauteur
valeur_max_pixel
pixel1 pixel2 pixel3 ...
0
merci en fait c bon j ai utilise fscanf qui est bien pratique pour ca :D
0
salut

j'ai le meme programme a realiser pour mes cours. j'aimerai savoir s'il y avait moyen que tu m'envoies le fichier . c de ton programme. en effet j'ai deja la structure mais il me manque juste l'algorithme de sobel a codé...
merci bcp
++
0