Uzyskaj RGB z BufferedImage

Czy ktoś może wyjaśnić, jak uzyskać tablicę wartości rgb z BufferedImage?

Mam obraz w skali szarości w obrazie BufferedImage i muszę wyodrębnić tablicę wartości od 0 do 255, które opisują obraz.
Wiem, że BufferedImage jest poprawny, ponieważ mogę go zapisać w PNG. Jednak jeśli używamint[] dataBuffInt = ((DataBufferInt) heightMap.getDataBuffer()).getData(); Mam mnóstwo ogromnych liczb ujemnych.

Szukałem przez chwilę i zobaczyłem odniesienia do zmiany niektórych wartości (słupek), ale tak naprawdę nie rozumiem, co mówią.

Zasadniczo chcę przejść z BufferedImage do tablicy od 0 do 255 wartości RBG.
Nie jestem pewien, czy dobrze się wytłumaczyłem, proszę o więcej szczegółów.

Edytować:
@Garbage Dzięki za napiwek. Próbowałem int [] dataBuffInt = heightMap.getRGB (0, 0, heightMap.getWidth (), heightMap.getHeight (), null, 0, heightMap.getWidth ()); Ale uzyskaj ten sam wynik.
@Greg Kopff Wynik wynosi 2 i został ustawiony na TYPE_INT_ARGB

questionAnswers(1)

yourAnswerToTheQuestion