cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 29 janv. 2010 à 18:33
Salut,
A vérifier, mais il me semble (de mémoire) qu'il s'agit du nombre de couleurs par pixels : 3 ou 4 selon si t'es en 24 bits ou 32 bits.
______________________________________
DarK Sidious
noula27
Messages postés9Date d'inscriptionmercredi 30 janvier 2008StatutMembreDernière intervention 4 mai 2010 29 janv. 2010 à 19:28
Il me semble moi aussi, mais je veux une réponse exacte, car je manipule une image gradient "im1" créer a partir de :
// chargement de l'image.
PlanarImage im0 = (PlanarImage)JAI.create("fileload",monImage);
// Creation des deux masques horizontal et vertical.
float masque_h[] = new float[] { 1.0F, 0.0F, -1.0F,
1.414F, 0.0F, -1.414F,
1.0F, 0.0F, -1.0F};
float masque_v[] = new float[] {-1.0F, -1.414F, -1.0F,
0.0F, 0.0F, 0.0F,
1.0F, 1.414F, 1.0F};
KernelJAI kern_h = new KernelJAI(3,3,masque_h);
KernelJAI kern_v = new KernelJAI(3,3,masque_v);
// Creation de l'operation de Gradient. im1 est l'image de gradient resultat
im1 =(PlanarImage)JAI.create("gradientmagnitude", im0, kern_h, kern_v);
Logiquement, "im1" est en niveaux de gris !! Quand j'applique:
Raster ras = im1.getData(); // Returns the entire image in a single Raster.
int nbands = ras.getNumBands();
System.out.println(" ............ nbands= "+nbands);
Je trouve que la variable nbands=3 => chaque pixels a 3 valeur ?? R, G et B ?? Ce qui me semble pas normal !!!!
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 29 janv. 2010 à 19:34
Salut,
Tout dépend comment est codé ton fichier image : s'il a une palette 24 bits, c'est normal. S'il a une palette 8 bits, il devrait te renvoyer 1 logiquement...
______________________________________
DarK Sidious