Quantifier les pixel d'une image

far3ousa Messages postés 2 Date d'inscription mercredi 2 juillet 2008 Statut Membre Dernière intervention 31 août 2008 - 29 août 2008 à 22:07
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 1 sept. 2008 à 13:16
je travaille sur Qt en C++
je voulais transformer une image de type QImage en une matrice dont l'élément(i,j) represente la valeur du pixel(i,j)
je vait retrancher ,et multiplier les elements  de ma matrice par un coefficient reel
qu'elles sont les fonction qui peuvent m'aider dans Qt ?
j'ai essaye avec pixel(i,j)mais elle retourne une valeur de type unsinged int auquel je ne peut rien faire

1 réponse

cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
1 sept. 2008 à 13:16
Salut,

(Je suis nul en QT)

Il y a de bonne chance pour que les unsigned int que tu récupères soient du RGB ou du ARGB.

RGB ça veut dire dans ton long de 32bits, tu en as 8 pour le rouge, 8 pour le vert et 8 pour le bleu. Le couleur finale du pixel est une combinaison de ces trois couleurs (

Comme précisé dans la doc, ton unsigned ressemble à ça en hexa :
0x00bbggrr

Donc du rouge c'est ça : 0x000000FF, du blanc c'est ça : 0x00FFFFFF...

Tu peux donc agir sur les 3 composantes indépendament pour arriver aux effets recherchés.

Il me semble que dans ton cas, il faut que tu réalises tes opérations sur les trois composantes séparément, en faisant attention aux dépassement (Si tu multiplie une composante à 200 par deux, tu vas obtenir du 400, ce qui ne tient pas sur 8 bits -> obligé de limiter à 255).
0
Rejoignez-nous