Obtener RGB de un BufferedImage
¿Alguien puede explicar cómo obtener una matriz de valor rgb de un BufferedImage?
Tengo una imagen en escala de grises en un BufferedImage y necesito extraer una matriz de 0 a 255 valores que describen la imagen.
Sé que el BufferedImage es correcto porque puedo guardarlo en PNG. Sin embargo, si usoint[] dataBuffInt = ((DataBufferInt) heightMap.getDataBuffer()).getData();
Tengo un montón de grandes números negativos.
He buscado por un tiempo y he visto algunas referencias para cambiar algunos valores (enviar) pero realmente no entiendo lo que están diciendo.
Básicamente, quiero pasar de un BufferedImage a una matriz de 0 a 255 valores RBG.
No estoy seguro de que me haya explicado correctamente, es necesario pedir más detalles.
Editar:
Gracias @Garbage por la punta. Intenté int [] dataBuffInt = heightMap.getRGB (0, 0, heightMap.getWidth (), heightMap.getHeight (), null, 0, heightMap.getWidth ()); Pero consigue el mismo resultado.
@Greg Kopff El resultado es 2 y se estableció en TYPE_INT_ARGB