getRGB() - Java - Programmation
Marsh Posté le 30-05-2007 à 14:36:45
montre plus de code
ca doit te renvoyer un tableau de RGBPixels.. et tu as surement un moyen pour récupérer chaque composante dudit pixel ensuite.
Marsh Posté le 30-05-2007 à 15:39:23
voila le code ca marche.
Code :
|
pour comparer j'ai simplement fait la différence de la valeur absolue de mes deux tableau.
ca marche mais je ne sais tjs pas pourquoi les valeurs retrounées par getRGB sont negative...
Marsh Posté le 31-05-2007 à 17:14:27
D'abord, regarde avec la calculatrice Windows, tu verras que -6710887, c'est égal à 0xFFFFFFFFFF999999.
Ensuite, si tu regardes la javadoc, tu verras que le tableau d'entiers est en fait un tableau d'octets, donc il ne faut pas le lire avec des données de type int mais plutôt des séries de 3 byte.
Marsh Posté le 13-06-2007 à 19:20:55
je dirai meme 4 bytes si l'image comporte de l'alpha, vraisemblablement le cas sur les mobiles
par contre, ton
Citation : Math.abs(image1[i]-image2[i])>=200000 |
ne signifie physiquement absolument rien (et certainement pas que la luminosité d'un px est supérieure à ... quoi d'ailleurs ??? 200000?)
Marsh Posté le 14-06-2007 à 10:37:47
je teste la différence des deux images, la valeur absolue c'est pour eviter les valeurs negatives (sachant qu'avec un + ou un - cette valeur est la mm)
les tests sont tres concluant malgré la simplicité du calcul.
Marsh Posté le 14-06-2007 à 10:39:34
le but konkretement c'est de repérer si l'image n est suffisement différente de l'image n-1 pour etre affichée. le 2000 c'est une sorte de sensibilité
Marsh Posté le 14-06-2007 à 10:56:38
comtpe plutot le nombre de pixels differents
deux images ne sont pas differentes si il elles ont bcp de pixels en commun
au passage, Math.abs(image1[i]-image2[i])>=200000 ne veut rien dire, il faudrai ( au minimum ) comparer chaque composante indépendammente ( R G et B ) pour que ca ai un sens
Marsh Posté le 14-06-2007 à 14:52:30
Citation : le but konkretement c'est de repérer si l'image n est suffisement différente de l'image n-1 pour etre affichée. le 2000 c'est une sorte de sensibilité |
Citation : au passage, Math.abs(image1[i]-image2[i])>=200000 ne veut rien dire, il faudrai ( au minimum ) comparer chaque composante indépendammente ( R G et B ) pour que ca ai un sens |
C'est bien ce que j'ai voulu dire.
Si tu vx faire une différence entre 2 pixels RGB, tu dois:
- soit faire composante par composante.
- soit sur la luminosité du pix donnée par sqrt(r²+g²+b²)
Marsh Posté le 30-05-2007 à 13:21:22
bonjour,
je souahiterai avoir quelques precision concernant la valeur enregsitrée avec la methode getRGB
je fous ca dans un tableau et ca me sort des valeurs de la forme : -6710887
pourquoi negatif ? est ce un chiffre a prendre entierement si je veu le comparer avec un autre ou est ce une suite de valeur pour le R, G et B??? si oui comment les differencier?
a quoi correspond ce chiffre en fait...
merci davance
guigui