Я получаю пиксели из BufferedImage, используя метод getRGB ().
пиксели хранятся в массиве, называемом data [].
Обратите внимание, что это может быть очень медленно. Если ваш BufferedImage поддерживает его, вы можете вместо этого получить доступ к базовому int [] и напрямую скопировать / прочитать пиксели оттуда.
Например, чтобы быстро скопировать ваши данные [] в базовый int [] нового BufferedImage:
BufferedImage bi = new BufferedImage( w, h, BufferedImage.TYPE_INT_ARGB );
final int[] a = ( (DataBufferInt) res.getRaster().getDataBuffer() ).getData();
System.arraycopy(data, 0, a, 0, data.length);
Конечно, вы хотите убедиться, что ваши данные [] содержат пиксели в том же представлении, что и ваш BufferedImage (в данном примере ARGB).