Pixel auslesen aus einem img

Sobaton

Grünschnabel
Hallo,

ich habe ein bufferedImage (jpg) und würde da gerne die einzelnen Pixel für die farbe Rot auslesen und in einem Array (mehrdimensional ;) ) speichern wäre da für gute ratschläge offen,




Code:
            bi = ImageIO.read(imageSrc); // bild lesen 
            w = bi.getWidth(null); //weite
            h = bi.getHeight(null); // höhe
            
            int[][] rgbs = new int[w][h]; //speicherort
            
            for(int i = 0; i < w; i++)
            {
            	for(int j = 0; j < h; j++)
            	{
            		rgbs[i][j] = bi.getRGB(i, j);
            	}
            }

wenn ich das nun in auslesen würde ergibt sich für rgbs[0][0] ein wert von "-10134982" wie nun weiter? irgendwie mit ">> 16" oder so und dann "<< 16" wieder zurück, um bestimme farben auszulöschen, aber was sind welche der farben? oder ist meine herrangehensweise falsch?

danke
Me

edit:
so problem erkannt und erledigt

ich bin von einem alphawert von nur FF000000 ausgegangen, aber es sind FFFFFFFFFF000000 ^^ daher hatte ich immer falsche werte, nun ist alles wie es soll, wer genaueres wissen will PN me

danke
 
Zuletzt bearbeitet von einem Moderator:

sheel

I love Asm
War wohl ein int-Größen-Problem, 4/8 Byte.
Aus diesem Code nicht wirklich ersichtlich.
Casten sollte es lösen.

Wenn du die Lösung mitteilen willst, mach es bitte hier.
Danke.

PS: Nachträglich Willkommen bei tutorials.de!