es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo leer cada píxel de una imagen y extraer los últimos bits de cada canal de color (RGBA).

Así que estoy tratando de obtener una matriz de bytes de datos comprimidos en una imagen, el creador me dijo que necesito leer cada canal de color.

Aquí está mi código hasta ahora:

byte[] RGBAb = null;
for (int x = 0; x < bitmap.getWidth(); x++) 
            {
                for (int y = 0; y < bitmap.getHeight(); y++) 
                {
                    int mask = 0xFF;

                Integer R = Math.abs(bitmap.getPixel(x, y) >> 16 & mask);
                Integer G = Math.abs(bitmap.getPixel(x, y) >> 8 & mask);
                Integer B = Math.abs(bitmap.getPixel(x, y) & mask);
                Integer A = Math.abs(bitmap.getPixel(x, y) >> 24 & mask);

                byte Rb = R.byteValue();
                byte Gb = G.byteValue();
                byte Bb = B.byteValue();
                byte Ab = A.byteValue();

                RGBAb = new byte[] { Rb, Gb, Bb, Ab};

                //System.out.println("Red" + R + "\n Red to bytes: " + Rb);
                //System.out.println("Green" + G + "\n Green to bytes: " + Gb);
                //System.out.println("Blue" + B + "\n Blue to bytes: " + Bb);
                //System.out.println("Alpha" + A + "\n Alpha to bytes: " + Ab);

                System.out.println("RGBA Bytes COMBINED \n" + RGBAb);

            }
        }

No sé si está produciendo el valor correcto.

Esta es la foto que estoy leyendo:
Haz clic aquí

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el código proporcionado está leyendo cada canal de color de la imagen correctamente y almacenándolo como una matriz de bytes llamada RGBAb. Sin embargo, no está claro cuál es el resultado deseado o el propósito de este código. También es difícil determinar si la salida es correcta sin más información sobre cómo debería ser la salida esperada. En cuanto a la foto que se está leyendo, no está incluida en la pregunta.

Comments are closed.