Salut à tous,
pointeur_pixel = (LPBYTE) bgbm_bits + ys*width_source*nb_bits_source + xs*nb_bits_source;
me permet de mettre un pointeur sur mon pixel...
Est-ce que quelqu'un sait comment récupérer la valeur en niveaux de gris du pixel ?
Salut à tous,
pointeur_pixel = (LPBYTE) bgbm_bits + ys*width_source*nb_bits_source + xs*nb_bits_source;
me permet de mettre un pointeur sur mon pixel...
Est-ce que quelqu'un sait comment récupérer la valeur en niveaux de gris du pixel ?
Ben ça dépend du format de l'image...
Si c'est une image 24 ou 32bits, moi je fais la moyenne des RVB...
Si c'est une image 256 couleurs avec une palette grise, on a la valeur direct...
Dans les autres cas, je ferais un GetPixel puis la moyenne des RVB...
Non on ne gère pas les images en API win32 comme cela.Envoyé par jiib
C'est plus complexe que cela.
Il faut utiliser l'API GetDIBBits , StretchDIBBits et autrres .
Voir le MSDN.
Il faut créer un BITMAPINFOHEADER
On peut utiliser GetPixel mais elle est très lente.
Aller sur www.codeproject.com , www.codeguru.com il y a des tutoriaux pour gérer les bitmaps.
ok Medinoc, donc *pointeur_pixel suffit... (j'ai pas encore regardé en fait)
Matt, super pour les tutoriaux. En fait, j'ai bien mon BITMAPINFOHEADER et cie. Je sais que mon pointeur est sur les données d'un pixel, mais je ne sais pas sous quelle forme sont ces données, et comme je vais devoir faire des opérations sur les valeurs des pixels.
A priori, je les récupère directement en entiers...
justement le fait d'utiliser des structures des API et fonctions API comme GetDIBBits permettent de récupérer le bon format de donnéesEnvoyé par jiib
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager