Lire une image pixel par pixel

diable007 Messages postés 21 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 12 mai 2008 - 20 sept. 2007 à 02:56
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 - 21 sept. 2007 à 09:03
svp aide moi à savoir comment lire une image bmp pixel par pixel svp donne moi un algorithme en c++ pour faire ça en utilisant FreeImage ou FreeImagePlus ou autre bibliothèque, je checher ça depuis 15 jours et je m'arrache mes cheveux sans rien trouver.
j'ai aussi posté dans le forum mais j'ai pas eu de bonne réponses.
merci d'avance
A voir également:

10 réponses

BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
20 sept. 2007 à 09:18
Re,
Apparemment, ce n'est pas la reconnaissance de formes qui te bloque, ce sont les bases du traitement d'images.
Je ne connais pas plus que toi FreeImagePlus, mon reflexe est donc d'aller voir la doc en ligne
Qu'est-ce que je vois:
- il y a des fonctions load pour charger des images et des fonctions save pour les enregistrer
- il y a les fonctions getWidth() et getHeight() pour connaître la taille en pixels de l'image
- il y a la fonction getPixelColor() qui te donne la couleur d'un pixel de coordonnées x et y
- de même, si tu préfères, il y a la fonction accessPixels() qui te retourne le pointeur vers la "matrice" de pixels

Voilà. Avec ça, tu as de quoi faire il me semble.

PS: mets-y un peu plus de formes dans tes demandes s'il te plaît...

Tiens-nous au courant...

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 1
20 sept. 2007 à 09:19
Bonjour,


Ca se lit pas forcement pixels par pixels vu que ya du codage genre RLE ou JPEG ou PNG mais si tu veux des exemple d'algo se rapprochant à ton idée, je suis sure que y'en a deja pleins sur code-sources.
=

Une autruche ne se cuit pas aux petits lardons
0
diable007 Messages postés 21 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 12 mai 2008
20 sept. 2007 à 13:59
mais non, j'ai pas compris la documentation en ligne, en plus j'ai pas su comment utiliser la fonction accesspixel()  je comprend pas le pointeur. svp aidez moi merci
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
20 sept. 2007 à 14:19
Aïe!
Tu ne connais pas la notion de pointeurs??
Désolé mais, comme le ferait BruNews, je te conseille très fortement d'ouvrir un livre sur la programmation C/C++ avant de t'aventurer dans des notions aussi complexes que la Reconnaissance de Formes...

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
diable007 Messages postés 21 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 12 mai 2008
20 sept. 2007 à 14:28
bonjour,
est ce que vous pouvez m'expliquer la difference entre ces deux fonctions:
getScanWidth();  et getWidth();
est ce l'image a deux largeurs????
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
20 sept. 2007 à 16:47
Re,
D'après la doc:
- getWidth() te retourne la largeur de l'image, en pixels
- getScanWidth() te retourne la largeur de l'images, en octets

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
diable007 Messages postés 21 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 12 mai 2008
20 sept. 2007 à 16:55
s'il vous plait cet algo fait quoi:

fipImage graphic_bible_file_image;
int bible_image_scan_width  = graphic_bible_file_image.getScanWidth();
    int bible_image_height      = graphic_bible_file_image.getHeight();
   
    BYTE *direct_access_pointer_for_file = graphic_bible_file_image.accessPixels();
   
    for(int i=0; i<bible_image_height; i++)
    {
        for(int j=0; j<bible_image_scan_width; j++)
        {
            BYTE *pixel = new BYTE[graphic_bible_file_image.getBitsPerPixel()/8];
            //cout << (int)direct_access_pointer_for_file[i*j];
            for(int k = 0; k<graphic_bible_file_image.getBitsPerPixel()/8; k++)
            {
              pixel[k]=direct_access_pointer_for_file[j*i+k];
              printf("0x%02x ",pixel[k]);
            }
            delete pixel;
        }
    }
   
0
The_Guardian Messages postés 317 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 19 octobre 2007 1
20 sept. 2007 à 19:32
Bonnjour,

ca affiche tous les octets d'une image apparemment (il peut avoir plusieurs octets par pixel)

Une autruche ne se cuit pas aux petits lardons
0
diable007 Messages postés 21 Date d'inscription dimanche 3 avril 2005 Statut Membre Dernière intervention 12 mai 2008
21 sept. 2007 à 01:11
bonjour,
je sais pas exactment si c'est vrai ou pas,
merci
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 103
21 sept. 2007 à 09:03
Salut,
Je rejoins The_Guardian. Ce code affiche à l'écran la valeur hexadécimale de tous les pixels de l'image.

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
Rejoignez-nous