Obter RGB de um BufferedImage
Alguém pode explicar como obter uma matriz de valor de rgb de um BufferedImage?
Eu tenho uma imagem em escala de cinza em um BufferedImage e preciso extrair uma matriz de 0 a 255 valores que descrevem a imagem.
Eu sei que o BufferedImage está correto porque eu posso salvá-lo em PNG. No entanto, se eu usarint[] dataBuffInt = ((DataBufferInt) heightMap.getDataBuffer()).getData();
Eu recebo um monte de números negativos enormes.
Eu procurei por um tempo e vi algumas referências para mudar alguns valores (postar) mas realmente não entendem o que estão dizendo.
Basicamente eu quero ir de um BufferedImage para uma matriz de 0 a 255 valores de RBG.
Eu não tenho certeza se expliquei corretamente, plaese pedir mais detalhes é necessário.
Editar:
@Garbage Obrigado pela dica. Eu tentei int [] dataBuffInt = heightMap.getRGB (0, 0, heightMap.getWidth (), heightMap.getHeight (), nulo, 0, heightMap.getWidth ()); Mas obtenha o mesmo resultado.
@Greg Kopff O resultado é 2 e foi definido como TYPE_INT_ARGB